gpt4 book ai didi

javascript - 在父子上触发相同的点击事件

转载 作者:行者123 更新时间:2023-11-30 17:20:09 25 4
gpt4 key购买 nike

我有一个导航结构,其中 html 元素具有父子关系。

<div id="navigationStructure">
<div class="addId">
<ol class="sortable ui-sortable">
<!----------Parent li for navigation ----------->
<li data-title="Home" data-link="" data-target="_self" class="item_0">
<div class="active">
Home
</div>
<ol>
<!----- CHILD li 1----------->
<li data-title="About" data-link="" data-target="_self" style="display: list-item;" class="item_1">
<div class="">
About
</div>
</li>
<!--------- CHILD li 2------------>
<li data-title="Products" data-link="" data-target="_self" style="display: list-item;" class="item_2">
<div class="">
Products
</div>
</li>
</ol>
</li>
<li data-title="Category" data-link="" data-target="_self" class="item_3">
<div>
Category
</div>
<ol>
<li data-title="Contact" data-link="" data-target="_self" style="display: list-item;" class="item_4">
<div>
Contact
</div>
</li>
</ol>
</li>
</ol>
</div>

我正在尝试编写一个函数来触发父项或子项的点击并选择它。

$('#popUpComponentSetting').on("click","#navigationStructure li", function() {
$('#navigationStructure ol li div').removeClass('active');
$('> div',this).addClass('active');
navId = $(this).attr('class');
.....
})

现在,如果我点击 child ,它会触发两次,一次针对 parent ,另一次针对 child 。

我浏览了 here 的线程但我想要不同的东西。我需要有一个对 parent 和 child 都适用的相同事件

最佳答案

使用 event.stopPropgation() 停止通过 DOM 树冒泡事件,

$('#popUpComponentSetting').on("click","#navigationStructure li", function(e) {
e.stopPropagation();
//rest of your code

关于javascript - 在父子上触发相同的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25279791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com