是否由浏览器插件决定一个事件是否应该在DOM中“冒泡”?

问题描述 投票:0回答:1

我已经尝试过VLC浏览器插件,我对此非常满意。但是当我在VLC框架内单击时,在VLC最终处理它之后,click事件不会委托给浏览器,即没有冒泡。这是浏览器/浏览器插件的默认行为,即浏览器只是查看<embed><object>并确定它不在其职责范围内,并且浏览器插件是否可以冒泡这个事件?

我知道这可能会因浏览器和插件类型(NPAPI / ActiveX)而异,这使问题更加有趣,恕我直言。

dom events browser dom-events browser-plugin
1个回答
2
投票

从理论上讲,NPAPI插件可以根据NPP_HandleEvent的返回来决定是否应该考虑处理鼠标事件,从而停止或应该冒泡。在实践中,一些最流行的插件总是返回0,这意味着浏览器通常只是忽略返回值(以避免奇怪的行为,如双击插件选择网页上的所有文本)。对于Chrome和IIRC来说,这对于Safari和Firefox也是如此。

© www.soinside.com 2019 - 2024. All rights reserved.