javascript - 当里面有 iframe 时使 div 可点击

标签 javascript html css

我想给div添加onclick功能,但是当div里面有facebook插件iframe时,onclick功能不起作用。

有代码:

<div onclick="alert('123)">
  <iframe 
    src="https://www.facebook.com/plugins/page.php?..." 
    width="470" 
    height="160" 
    style="border:none;overflow:hidden" 
    scrolling="no" 
    frameborder="0" 
    allowTransparency="true">
  </iframe>
</div>

最佳答案

你可以尝试这样的事情:

逻辑:

  • 在父窗口中,搜索所有iframe
  • 导航到他们的父节点。
  • 将事件附加到此节点。

window.addEventListener('load', registerEvent)

function registerEvent(){
  var divs = document.querySelectorAll("iframe");
  for(var i = 0; i< divs.length; i++){
    divs[i].parentNode.addEventListener("click", clickHandler)
  }
}

function clickHandler(){
  console.log(this.innerHTML);
}
div{
  background: #ddd;
  min-height: 100px;
}

iframe{
  background: #fff;
}
<div>
  <iframe 
    src="https://www.facebook.com/plugins/page.php?..." 
    width="470" 
    height="160" 
    style="border:none;overflow:hidden" 
    scrolling="no" 
    frameborder="0" 
    allowTransparency="true">
  </iframe>
</div>

关于javascript - 当里面有 iframe 时使 div 可点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42992627/

相关文章:

css - 在 Mozilla 中动画前变换

css - 如何使用 CSS 删除嵌套链接下划线和颜色?

html - 将 Span 元素定位在 Table 元素上的 CSS 解决方案

javascript - 有一个使用 html5 的网络作品 "hello world "演示

javascript - 验证输入值包含 x 个数字字符

Javascript 自动完成函数 href

html - HTML5-音频标签由于某种原因无法正常工作

html - 为什么我的页脚不在页面底部?

javascript - 使用 rows.add 将 JSON 信息添加到数据表

javascript - 使用 Reactjs 将 Express req 和 res 数据传递给客户端