如何在鼠标悬停iFrame对象上暂停jQuery?

时间:2015-04-16 15:57:17

标签: jquery iframe

我有一个jQuery,在鼠标移动时淡入/淡出div对象,但是在视图中有一个iframe时它无法正常工作。

这是我的jQuery:

var timer, myDiv = $('#mydiv');
$(document).on('mousemove', function(ev) {
    var _self = $(ev.target);

    clearTimeout(timer);

    if (_self.attr('id') === 'mydiv' || _self.parents('#mydiv').length) {
        return;
    }    

    if(!myDiv.hasClass('show')) {
       myDiv.fadeIn();
    }          

    timer = setTimeout(function() { 
        myDiv.fadeOut(1000, function() {
            myDiv.removeClass('show');
        });
    }, 1960);    
});

当鼠标指针悬停在iframe对象上时,为什么这个jQuery不起作用?

这里是DEMO

你可以在演示页面的顶部看到jQuery的正常运行,它在鼠标移动时显示红色方块,并在n秒不活动后隐藏它。

相反,如果您尝试在iframe上执行相同操作,则红色方块将变为隐藏状态,而不是其他任何内容。

更新

感谢 A。向我展示的{Wolff this我知道解决方案比想象的更复杂。

  

如果文档不在同一个document.domain上,那就变得非常了   有点mroe复杂,你需要运行iframes页面   javascript本身设置mousemove事件监听器。然后你   可以进行如下所述的跨帧通信:   http://softwareas.com/cross-domain-communication-with-iframes

iFrame被引用到我的子域名页面,因此我可以以任何方式进行编辑。

我该怎么办?

0 个答案:

没有答案