我有相同类别的不同按钮。每个按钮都有一个带有 :after 的“+”。我想在单击某个按钮时显示“-”,并在单击另一个按钮、单击窗口的其余部分或再次单击同一按钮时删除“-”。
这是我到目前为止所拥有的:
var removeClass = true;
$(".button").click(function () {
/* $(".button").removeClass('bclose'); */
$(this).toggleClass('bclose');
removeClass = false;
});
$(".button").click(function() {
removeClass = false;
});
$("html").click(function () {
if (removeClass) {
$(".button").removeClass('bclose');
}
removeClass = true;
});
如果您再次单击窗口或按钮,“-”和 bclose 类将会删除,但如果您单击其他按钮之一,“-”不会删除。
如果我添加
$(".button").removeClass('bclose');
它工作正常,但如果您再次单击同一按钮,则不会。
最佳答案
你可以这样使用
$(".button").click(function () {
$(".button").not(this).removeClass('bclose');
$(this).toggleClass('bclose');
});
关于Jquery - 单击按钮时切换类/单击主体和具有相同类的其他按钮时删除类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24061161/