微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果您无法访问父元素的代码,如何停止事件传播?

如何解决如果您无法访问父元素的代码,如何停止事件传播?

如果我将子元素附加到父元素,如果我无权访问父元素的事件侦听器代码,是否可以停止将父事件传播到附加子?如果可能的话,怎么办?

在子事件侦听器中是否可以执行此操作?是否有类似e.target.parentElement.stopPropagation()的东西?

解决方法

如果事件通过您添加的子代,则可以通过在其上调用stopPropagation来停止该事件。它与元素的处理程序无关。重要的是,其中一个在事件上调用了该方法。因此只需e.stopPropagation()

如果事件通过子对象(它直接针对父对象,或通过其他子对象传递给父对象),则除非停止,否则无法停止传播在附加另一个处理程序之前,将您的处理程序附加到父元素。但是从您的描述来看,这听起来并不可行。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。