2011-06-15 46 views
0

上,我需要一個懸停事件添加到網頁上的所有元素,我這樣做是這樣的:添加懸停所有元素

$("*").hover(
     function() { 
       $(this).addClass('hoverElem'); ; 
     }, 
     function() { 
       $(this).removeClass('hoverElem'); 
     } 
    ); 

現在我需要把它做事件上的每個元素,但不在身體元素,任何想法?

謝謝。

+1

如果我理解正確的話,如果你的代碼上面的作品,你可以做這樣的事情:「$(‘身體*’)懸停(.....」我。認爲調整應該工作 – sisko 2011-06-15 07:37:30

回答

1

試身下選擇的所有元素:

$("body *").hover(...) 
+0

謝謝,但它沒有工作,我有一個頁面在iframe中,也許這就是爲什麼它不工作?任何其他想法? – Ovi 2011-06-15 07:43:35

+0

它現在工作,但它有趣的一些網站在iframe的工作和一些不。 – Ovi 2011-06-15 07:49:20

+0

試試我應該對所有人都適用的例子 – WooDzu 2011-06-15 07:52:14

1

$('body *').hover(function() { // ... });

0

正如你可以看到THI http://jsfiddle.net/D42d5/

可以使用不選擇器這樣的選擇可能看起來像:

$("*:not(body)").hover(
     function() { 
       $(this).addClass('hoverElem'); ; 
     }, 
     function() { 
       $(this).removeClass('hoverElem'); 
     } 
    ); 
0

嘗試不同的方式:

$("#IframeID").contents().find("body *").hover(
     function() { 
       $(this).addClass('hoverElem'); 
     }, 
     function() { 
       $(this).removeClass('hoverElem'); 
     } 
); 
0

也許你可以使用bind和unbind。

像這樣

 $("*").bind('hover', function() { 
    //do something 
});  
$("body").unbind('hover', function() { 
    //do something 
}); 
相關問題