我很难找到任何有助于解决此问题的信息。我已经尝试了其他一些适用于其他人的选项,但它似乎并没有起作用。
我有这样的div设置:
<div class="dynamic-content">
<div class="button"></div>
<div class="content"></div>
</div>
我尝试做的是在单击.button时通过添加特定类,然后再次单击.button删除该动画并删除特定类,将动画内容应用于.dynamic-content。
这是我的jQuery:
$(".button").on('click', function() {
if ($(".dynamic-content").hasClass('open')) {
$(".dynamic-content").removeClass('open'));
} else {
$(".dynamic-content").addClass('open'));
}
}
如果我不包含.removeClass()部分,则addClass可以正常工作。但是,只要我放入.removeClass,在检查器中,我就可以看到.dynamic-content点亮了,好像有针对性并且由JS采取行动,但没有任何反应,甚至没有.addClass正在工作。
答案 0 :(得分:3)
这是因为你的代码中有错误:
INSERT INTO locTbl VALUES ('A', B', 100.0); //Good to insert
loc1 | loc2 | dist
-----+------+-----
A B 100.0
INSERT INTO locTable VALUES('B','A',100.0); //Produce an error
删除额外的空格,你很高兴。
您还可以使用 $(".dynamic-content").removeClass('open'));
//^Remove extra brace
:
.toggleClass()
答案 1 :(得分:0)
JS:
$(".button").on('click', function() {
if ($(".dynamic-content").hasClass('open')) {
$(".dynamic-content").removeClass('open');
} else {
$(".dynamic-content").addClass('open');
}
});
答案 2 :(得分:0)
条件有效吗?因为“.dynamic-content”是一个类,所以jQuery将获得它找到的第一个类。也许页面上还有另一个符合你条件的那个?
正如人们所说,可能发生的另一件事是你的额外“)”正在破坏你的功能。
无论哪种方式,我都会尝试toggleClass,它完全符合你的条件:
$(".button").on('click', function() {
$(".dynamic-content").toggleClass("open")
}
如果该类在那里,它将删除它,如果没有,则添加它。