我是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/

10-12 00:02
查看更多