【发布时间】:2020-08-29 12:51:42
【问题描述】:
我想在 jQuery 中使用 toggleClass 时停止所有类切换。
我已经使用下面的代码实现了 jQuery 函数来切换图标 180 度。
HTML:
{{#each menu}}
<ul id="myUL">
<div class="menu-text">
<li><span class="caret treeparent"> {{@key}}<i class="fas fa-chevron-down arrow"></i></span>
<ul class="tog">
{{#each this}}
<li class="nav-item">
<a>{{{this.label}}}</a>
</li>
{{/each}}
</ul>
</li>
</div>
</ul>
{{/each}}
jQuery:
$(".treeparent").click(function () {
$(".arrow").toggleClass('flip');
});
CSS
.arrow {
-moz-transition: transform 0.6s;
-webkit-transition: transform 0.6s;
transition: transform 0.6s;
}
.flip {
transform: rotate(-180deg);
}
然后所有图标都旋转 180 度。我想要做的是只旋转点击的 div 图标。为了解决这个问题,我使用了以下代码。
$(".treeparent").click(function () {
$(this).next('.arrow').toggleClass('flip');
});
然后旋转也不起作用。我该如何解决这个问题?
【问题讨论】:
-
您需要包含 HTML 以查看 .treeparent 和 .arrow 的相关性
-
@freedomn-m 编辑了添加 HTML 部分的问题
-
我认为最简单的解决方案是为您希望切换的标签添加一个 id,然后通过它的 id 进行查询
标签: javascript jquery