首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >事件冒泡在IFrame中不发生

事件冒泡在IFrame中不发生
EN

Stack Overflow用户
提问于 2016-10-18 13:27:42
回答 1查看 7.8K关注 0票数 8

我认为这是一个无辜的问题,但我还不知道答案。

我们都知道,事件冒泡会将事件导向其预期的目标,它的工作方式如下:单击按钮,将事件定向到按钮。如果为该对象设置了事件处理程序,则会触发该事件。如果没有为该对象设置事件处理程序,则该事件会向对象父对象(如水中的气泡)冒泡。

Html部件

代码语言:javascript
运行
复制
<div>
  <iframe>
    <a>Clickable fdf Area</a>
  </iframe>
</div>

javascript部分

代码语言:javascript
运行
复制
    $('div iframe').load(function(){
    var iframeBody = $(this).contents().find("body");
  iframeBody.html("<a href='www.google.com'>clickable area</a>");
  iframeBody.on("click", "a", function(){
    alert(22222);
  });
 document.getElementsByTagName("div")[0].addEventListener("click", function(event){
        alert(11111);
 }, true);

});
$('iframe').attr("src","JavaScript:'iframe content'");

我的问题很清楚。当我试图点击iframe 'a‘标签,为什么我没有得到警报(11111)?为什么没有保持事件冒泡,以及通过代码访问事件buubling的方法是什么?

也参考琴杆

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-18 13:33:50

冒泡只能通过一个文档树进行。iframe是一个独立的文档树,因此在其树中冒泡的事件终止于iframe文档的根部,并且不会跨越边界进入宿主文档。

捕获从树顶(通常是文档)向下操作。

~ 文档对象模型事件: 1.2.2。事件捕获

这种向上传播将继续到并包括文档。

~ 文档对象模型事件: 1.2.3。事件冒泡

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40109631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档