gpt4 book ai didi

javascript - 为什么这个函数会触发多次?

转载 作者:搜寻专家 更新时间:2023-11-01 04:58:04 24 4
gpt4 key购买 nike

我正在填写这个列表:

<ul id="FolderList"></ul>

使用生成以下 HTML 的 jquery 的文件夹列表:

<ul id="FolderList">
<li id="FolderList0" onclick="return myFunc(0)">Item 1</li>
<li id="FolderList1" onclick="return myFunc(1)">Item 2</li>
<li id="FolderList2" onclick="return myFunc(2)">Item 3
<ul>
<li id="FolderList2a" onclick="return myFunc(2a)">Sub Item 1</li>
<li id="FolderList2b" onclick="return myFunc(2b)">Sub Item 2
<ul>
<li id="FolderList2bi" onclick="return myFunc(2bi)">Subsub Item 1</li>
</ul>
</li>
</ul>
</li>
</ul>

...

function myFunc(id) {
//do something

返回错误; };

出于某种原因,如果我单击 1 级 li 项目,函数 myFunc() 将按预期执行。如果我单击“2 级”项目(即:FolderList2a),myFunc 将被调用两次。如果我单击第 3 级(即:FolderList2bi),它会被调用 3 次 - 依此类推。有人知道这里发生了什么吗?!提前致谢!

最佳答案

点击事件是bubbling上 Dom
如果你想防止冒泡让myFunc返回false

要停止冒泡,您需要访问事件对象、event.stopPropagationevent.cancelBubble,具体取决于浏览器。

http://jsfiddle.net/Jetyc/3/

关于javascript - 为什么这个函数会触发多次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11334791/

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