我遇到了一个问题,我想在点击元素时添加和删除类。但是,如果我单击两次相同的元素,则会删除添加的类。我不知道这里的问题是什么。
$('#01').click( function() {
$(".d1").removeClass("show-forms");
$(".d2").removeClass("show-forms");
$(".pick-notice").toggleClass("hide-forms");
$(".d0").removeClass( "hide-forms" );
$(".d0").toggleClass("show-forms");
} );
还有一种方法可以将更多元素用于相同的功能,如下所示:
$('#01, #02, #03').click( function() {...
我尝试了这个,但它没有用
$('#01', '#02', '#03').click( function() {...
答案 0 :(得分:1)
要为多个选择器分配相同的功能,您的第一个代码应该有效(参见此处参考:https://api.jquery.com/multiple-selector/)
$('#01, #02, #03').click( function() {} );
从您添加类的示例中不太清楚,我认为您可能希望使用addClass(https://api.jquery.com/addClass/)而不是toggleClass(https://api.jquery.com/toggleClass/)。 addClass将类添加到所选元素。而toggleClass会将类添加到所选元素中,如果它没有类,如果它有类,它将删除它。那么这就是为什么第二次单击它会删除该类?
尝试以下方法:
$('#01').click( function() {
$(".d1").removeClass("show-forms");
$(".d2").removeClass("show-forms");
$(".pick-notice").addClass("hide-forms");
$(".d0").removeClass( "hide-forms" );
$(".d0").addClass("show-forms");
} );
或者如果您想要多个选择器:
$('#01, #02, #03').click( function() {
$(".d1").removeClass("show-forms");
$(".d2").removeClass("show-forms");
$(".pick-notice").addClass("hide-forms");
$(".d0").removeClass( "hide-forms" );
$(".d0").addClass("show-forms");
} );
答案 1 :(得分:0)
您可以使用它来一次选择muntiple类:
string1 = string1.replace("b", "c")
string2 = string2.replace("b", "c")
string3 = string3.replace("b", "c")
这将适用于每个Id
答案 2 :(得分:0)
我不是问题的第一部分,而是问题的第二部分:
我认为将它变成一个类
是一个更好的解决方案所以01,02,03
都是某个类(即.clickable
)
这样你就可以$(.clickable).click(function(){