通过将鼠标悬停在iframe

时间:2017-07-20 21:17:10

标签: javascript

我正在开发可扩展的横幅添加。问题是横幅规格要求横幅在鼠标离开横幅时自动折叠。

这很复杂,因为横幅的展开页面有一个youtube视频。 HTML5 YouTube视频会插入一个iframe。

所以发生的事情是,当鼠标移到YouTube视频上时,横幅会崩溃。它不应该这样做,横幅只应在鼠标离开横幅广告区域时折叠。

根据您在横幅中的位置,横幅有4个不同的活动顶层。折叠按钮,重要安全信息复制区域,YouTube视频和横幅的其余部分点击退出网址。

要解决此问题,我使用以下方法定位父元素的所有子元素:Prevent onmouseout when hovering child element of the parent absolute div WITHOUT jQuery

但是,这对iframe不起作用。

如果任何人都可以指出我正确的方向,以防止当光标悬停在YouTube视频/ iframe上时横幅自动崩溃我会非常感激。

由于

1 个答案:

答案 0 :(得分:0)

如我所见,您正在检查子元素,使用以下示例:

if (e.parentNode == this || e == this)

所以,你可以通过额外的检查来修改它,

  • !e检查不是来自跨域的iframe
  • e.tagName === 'IFRAME'检查悬停元素是不是 iframe中
  • event.target !== this检查你是不是回到了 横幅元素

例如:

if (!e || e.parentNode === this || e.tagName === 'IFRAME' || event.target !== this)

所以它只是一个假设,但实际表达式将取决于HTML的结构。