gpt4 book ai didi

javascript - IE 中的事件传播

转载 作者:行者123 更新时间:2023-11-30 00:21:46 25 4
gpt4 key购买 nike

在一个简单的HTML页面中,对于下面的代码,

<ul>
<li id='testlist' style='border: 1px solid #2E2E2E;width:100px;height:100px;' onkeydown= "alert('kd');" onkeypress="alert('kp');" tabindex='0'>
Click me
</li>
</ul>

当我按“ENTER”(焦点在 li 元素上)时,首先弹出“kd”,然后弹出“kp”。由此我推断通常 onKeyDown() 首先执行,然后是 onKeyPress()。这意味着从按键到按键的事件传播正常发生。

但是在我的项目中,对于相同的代码,这个流程并没有发生。流程以“kd”停止。

事件传播因 onKeyDown() 而停止而不移动到 onKeyPress() 的可能原因是什么

我怀疑实现这种情况的可能方法是什么。 IE。停止事件传播。我知道的一种可能性是“stopPropagation”。但是我没有在我的代码中的任何地方使用它。有没有其他可能实现同样的目标。

最佳答案

这些事件没有被传播。它们是两个独立的事件。

keyPress 是一个事件,keyDown 是另一个事件。

您无法停止从 keyDown 事件传播 keyPress(没有带有标志或其他内容的自定义代码)。

事件从子元素传播到父元素。不是从一个事件类型到另一个事件类型。

关于javascript - IE 中的事件传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32866341/

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