2017-04-01 66 views
0

我有一个函数应该能够检测到你在一个iframe上只停留在上的只有代码只有在内容加载之前才有Jquery“鼠标悬停”

$(document).ready(function(){ 
    editor(); 
}); 
function editor(){ 
    var iframe = document.getElementById("iframe") 
    var doc = iframe.contentDocument || iframe.contentWindow.document; 
    $(doc).on('mouseover',function(e){ 
     console.log("hey"); 
     //further code non-related 
    }); 
} 

当我移动我的鼠标,我有我的鼠标移到这个一定iframe应该火,但它只做一次当我加载它,我的鼠标在iframe。有没有更新我不知道或?所以,当我将鼠标移过这个iframe什么都不会发生,这是一种令人不安的的问题。


目标

所以,最初的目标是有一个页面上的iframe,当我移动鼠标移到该iframe我希望能够看到什么项目iframe我在盘旋。这是只有当鼠标是iframe。我想这消息时,我将鼠标悬停在项目iframe我想....

当它工作

它的工作原理,没有内容。正如你可以看到hereButttt ...当内容加载时,整个操作关闭,并且而不是工作了。

+0

我尝试过了,它工作正常。也许你想'mousemove'而不是'mouseover'? – user7771338

+0

@FREE_AND_OPEN_SOURCE如果iframe为空,那么这些事件将起作用!一旦内容被加载,它不会工作! – demonofthemist

回答

1

绑定在IFRAME事件直

function editor(){ 
 
    $("iframe").on('mouseover',function(e){ 
 
     alert("hey"); 
 
     //further code non-related 
 
    }); 
 
} 
 

 
editor();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<iframe src="https://www.youtube.com/embed/NMBNZspmn7I"> 
 

 
</iframe>

+0

不,好。我很抱歉也许会让你感到困惑,但是我想让它在触发iframe内容的时候触发,而不仅仅是自己的iframe。在本质上进入'iframe'的尺寸,但是当徘徊任何东西时,它应该发送消息。 – Sjenkie

+0

+你的意思是这样的http://stackoverflow.com/a/19812589/3563013 – McKabue

+0

@McKabue是的,但这基本上是我正在尝试,因为你可以在我上面的示例中看到。 – Sjenkie