我有一个scenario- 我必须选择一系列元素与2个概率:我的选择过程中不匹配?
- 点击全选。
- 通过单独选择。
问题是如果我尝试执行两者,就会出现不匹配问题。 我选择所有和选择单独运作良好。但问题是,当我选择所有,当我点击单个元素,然后选择所有没有很好地工作。 以下是我到目前为止所尝试过的。现在请帮我解决这个问题,以便它在所有情况下都能正常工作,例如,如果我在选择所有应用程序之后选择所有元素后点击任何元素,即使我选择了所有元素,也是如此。 另外附加图像,得到更清晰:
步骤1:
步骤2:
步骤3:该问题区域
$('.SubNavHover li:first-child').click(function() {
$('.SubNavHover li a').toggleClass('allActive');
if ($('.SubNavHover li a').hasClass('currentActive')) {
$('.SubNavHover li a').removeClass('currentActive ').addClass('allActive ');
}
if ($(this).nextAll().hasClass('allActive')) {
$(this).addClass('allActive');
} else {
$(this).removeClass('allActive');
}
});
$('.SubNavHover li a').click(function() {
$(this).toggleClass('currentActive');
if ($(this).hasClass('allActive')) {
$(this).removeClass('currentActive allActive');
}
$(this).removeClass('allActive');
});
ul,
li {
margin: 0px;
padding: 0px;
}
a {
color: black;
}
a.allActive {
color: blue;
}
a.currentActive {
color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<ul class="SubNavHover" style="opacity:1; visibility:visible;">
<li><a href="#">Select All </a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
<li><a href="#">Sub Menu <i class="fa fa-check"></i></a></li>
</ul>
所以选择都应该总是选择所有,没有** **取消选择所有? –