好的,所以当你单击.userGridViewItem时,它应该通过执行toggleClass()
来突出显示元素$(".userGridViewItem").live('click', function () {
$(this).toggleClass("warnings_receiver_highlight");
});
这很好用。现在我想在元素突出显示之前做一个检查器。
我想这样做,你只能突出显示相同的警告级别。 (黄色/无颜色是警告级别)
因此,如果您选择了1个黄色,则在取消标记黄色元素之前,您应该无法选择非彩色元素,然后您可以选择非彩色元素。
黄色/非彩色的类别为:warningYellow
,warningNone
。
所以在用户拥有类warningNone
之前所有未经警告的,并且之前所有被警告的用户都有类warnedYellow。通过这个我想确定并检查所以你只强调其中一个。
很难解释。
又一个例子:
如果您没有突出显示任何内容,并且突出显示一个具有类warnedYellow的元素,那么您应该只能高亮显示另一个warnedYellow类(如果您单击并尝试突出显示warningNone
,则会发出警告错误类)
在这里,您可以突出显示(变为黑色)黄色和无黄色,您应该只能突出显示您先拾取的内容。因此,如果你选择黄色,你应该能够突出显示另一个黄色而不是“无”..如果你首先选择“无”,那么你应该不能突出显示任何“黄色”
答案 0 :(得分:0)
可能你正在寻找这样的东西:
$(".userGridViewItem").bind('click', function () {
if ($('.warnings_receiver_highlight').length > 0) {
if (($('.warnings_receiver_highlight').hasClass('warningYellow') &&
$(this).hasClass('warningYellow')) ||
($('.warnings_receiver_highlight').hasClass('warningNone') &&
$(this).hasClass('warningNone'))
) {
$(this).toggleClass("warnings_receiver_highlight");
} else {
alert('error');
}
} else {
$(this).toggleClass("warnings_receiver_highlight");
}
});
答案 1 :(得分:0)
$(".userGridViewItem").bind('click', function () {
if(($('.warningYellow').hasClass('warnings_receiver_highlight') && $(this).hasClass('warningNone'))||$('.warningNone').hasClass('warnings_receiver_highlight') && $(this).hasClass('warningYellow')))
return;
$(this).toggleClass('warnings_receiver_highlight');
});
知道了吗?如果没有突出显示任何人或仅突出显示同一类中的元素,则仅切换该类。