【发布时间】:2016-05-02 19:35:07
【问题描述】:
我有这个带有 iframe 的页面。我想在 iframe 之外的元素上触发悬停类。它不是父包装器,它只是 iframe 之外的 DOM 中完全不同的 div。
html:
<body>
<div class="a6-expander-wrapper"></div>
<div class="some-other-div"></div>
<iframe title="My-Iframe" src="//example.com"></iframe>
</body>
CSS:
.a6-expander-wrapper-hover {
opacity: 1 !important;
}
.a6-expander-wrapper {
height: 44px;
width: 44px;
background-color:red;
opacity: 0;
}
我目前正在使用的 jquery:
var $iframe = $('iframe[title="My-Iframe"]').contents();
var hoverItem = $('.a6-expander-wrapper');
$iframe.find('*').mouseover(function () {
hoverItem.addClass('a6-expander-wrapper-hover');
}).mouseout(function () {
hoverItem.removeClass('a6-expander-wrapper-hover');
});
这是一个 plnkr:http://plnkr.co/edit/2WONkAijTzF2BBsh3p9H?p=preview
从 plnkr 可以看出,这些都不起作用。我不知道该怎么办。让我知道你将如何解决这个问题。
【问题讨论】:
-
如果您服务器上的 iframe 或者它是您无法控制的外部页面?
-
从技术上讲,它是我网络(子域)上网站的 iframe。我确实将 $iframe 更改为 iframe 但没有运气
-
var $iframe应该是var iframe...这是一个原因... :) javascript 变量名只能以字母或下划线开头 -
修复了这个但没有爱。
标签: javascript jquery css iframe hover