我是jquery的新手。我嵌套了同名的li
。我想根据单击的div
级别在类打开的情况下设置li
的左侧位置。但是,当我在li
内单击时,它将排在第一位。
这是我的代码
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="open">
<ul>
<li class="child">
<a href="#">link1</a>
<ul>
<li class="child">
<a href="#">menu link1</a>
</li>
</ul>
</li>
</ul>
</div>
<script>
$(".child").on("click", function() {
var l = $(this).parents('ul').length
var a = 101 * l;
$(".open").css({
"left": "-" + a + "%"
})
})
</script>
提前致谢
最佳答案
问题在于,当您单击内部li时,单击和单击都发生了,您可以在事件内部使用stopPropagation来防止
关于javascript - 具有相同类的嵌套元素上的jquery click事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53724124/