我正在使用 JQuery toggleClass 在单击按钮时更改按钮的颜色。当再次单击它时,它应该恢复为原始颜色,并且当鼠标单击其他任何地方(包括空白区域)时,它应该恢复为原始颜色。
我不知道该怎么做,但下面是我设法找到并插入内容的两个片段。
以下代码段将在单击按钮时更改颜色,但再次单击时它不会恢复为原始颜色,但是当单击任何其他元素或空白时,按钮颜色会恢复为原始颜色:
(function () {
$('.button_is').click(function(evt) {
evt.stopPropagation(); //stops the document click action
$(this).siblings().removeClass('button_addition');
$(this).toggleClass('button_addition');
});
$(document).click(function() {
$('.button_is').removeClass('button_addition'); //make all inactive
});
});
以下代码段将在单击元素时切换类,当再次单击它时,它会恢复为原始状态,但如果在其他地方单击,则不会恢复为原始颜色:
$(document).ready(function () {
$(".button_is").click(function () {
$(this).toggleClass("button_addition");
});
});
我可以利用这两个片段中的哪一个来确保单击按钮时颜色发生变化,再次单击按钮时它会恢复为原始颜色,并且当单击其他元素或空白时它会恢复为原始颜色?