【问题标题】:JS detect click on iFrame inside DIVJS检测点击DIV内的iFrame
【发布时间】:2021-04-13 06:28:28
【问题描述】:

我正在尝试检测对第三方 iFrame 的点击,该 iFrame 在另一台服务器上加载并呈现。

我在包含 iframe 的父 div 上添加点击侦听器。但它的监听器只有在我点击 div 时才起作用,而不是在这个 div 内的 iframe 上。

有什么方法可以检测到在我的 div 内点击 iframe 吗?也许是一些 ReactJS 库?

【问题讨论】:

  • 不............如果你在这里搜索,我相信你会得到使用模糊来猜测它们在 iframe 中的答案......
  • 您无法检测到 iframe 内的点击。最多您可以检测到对您的 页面的透明元素的点击,该元素覆盖 iframe。但是这个元素会“捕捉”点击,并且不会再传播到 iframe 中。你能解释一下这样做的实际目的是什么吗?
  • CBroe 我不想跟踪 iframe 内的点击。我有广告代码,它在“我的”div 中生成带有横幅的 iframe。我想跟踪和统计点击它的人。
  • 这两个内容你都控制了吗?意思是 iframe 是您开发的网络应用吗?
  • 不,只有 div 容器,

标签: javascript html reactjs iframe


【解决方案1】:

我们可以使用 iframe 做的事情是,我们可以使用 Javascript 的 contentWindowcontentDocument 在使用 iframe 的网站上进行操作。试试这些,看看它们是否有帮助。

contentWindow 属性返回一个窗口对象 HTMLIFrameElement。您可以使用此 Window 对象来访问 iframe 的文档及其内部 DOM。该属性是只读的, 但它的属性可以像全局 Window 对象一样进行操作。

使用 jQuery:

使用 jQuery contents() 方法

如果您尝试简单地使用 jQuery click() 方法在 iframe 中检测或 capture a click 事件,它将不起作用,因为 iframe 将网页嵌入到另一个网页中。但是,您仍然可以使用 jQuery contents()load() 方法在同一个域上执行此操作。

试试这个资源: https://www.laravelcode.com/post/how-to-detect-click-inside-iframe-using-javascript

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-06
    • 2012-04-30
    • 2011-05-23
    • 2023-03-27
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多