2011-09-09 76 views
2

我有一系列的縮略圖。當您將鼠標懸停在縮略圖上時,縮略圖頂部的按鈕變得可見。它最初通過可見性屬性是不可見的。在圖像上方的按鈕,jQuery的mouseover mouseout問題

當我將鼠標懸停時,它很好,但是當我將鼠標懸停在縮略圖頂部的按鈕上時,按鈕開始閃爍。這是有道理的,因爲我從縮略圖中移出。我的問題是,如何在超過縮略圖和按鈕的情況下做到這一點,它不會像我從拇指中移出一樣。這是我目前使用的:

$(".adminGalImg").hover(function() 
{ 
    $(this).parent().find(".galImgBtn").css("visibility","visible"); 
}, 
function() 
{ 
    $(this).parent().find(".galImgBtn").css("visibility","hidden"); 
}); 

回答

2

使用div作爲容器來容納圖像和按鈕。然後,當您將鼠標懸停在按鈕上時,您不會離開切換可見性的容器。

<div id="#holder"> 
    <img class="adminGalImg" src="image source" /> 
    <button class="galImgButton">Button</button> 
</div> 


$("#holder").hover(function() 
{ 
    $(this).parent().find(".galImgBtn").css("visibility","visible"); 
}, 
function() 
{ 
    $(this).parent().find(".galImgBtn").css("visibility","hidden"); 
}); 
+0

是的工作。把它放在持有人是最好的方法。所有回覆都可以工作,因爲他們幾乎是一樣的,謝謝你們 – Ronnie

0

在包含圖像和按鈕而不是圖像的容器上懸停/放開功能。例如:

<div class="container" style="background-image: url(1.png)"> 
    <button></button> 
</div> 

$(".container).hover(...); 

這應該可以正常工作。