當鼠標懸停在圖像「A」上時,試圖讓圖像「B」覆蓋圖像「A」。理想情況下,我想它淡入jQuery懸停()閃爍/褪色
HTML:
<div id="prod-image">
<img src="../imgs/products/mens/image-A.jpg" class="box-shadow" />
</div>
<div id="prod-overlay">
<img src="../imgs/image-B.jpg" />
</div>
的jQuery:
$(function() {
$("#prod-image").hover(function() {
$(this).next().fadeIn().show();
}, function() {
$(this).next().fadeOut().hide();
});
});
問題是每一個鼠標移動它重新觸發懸停效果這意味着它閃滅,因爲它時間觸發鼠標移動的每個像素。我如何才能讓它在我們離開容器div時觸發第二個動作,而不是在其中移動?
感謝您的任何幫助。
[編輯]
CSS:
#prod-overlay {
display: none;
position: absolute;
z-index: 999;
top: 0px;
}
基本上它只是坐在這個div在另一個的上面。我不認爲這是真的有關?除非z-索引搞砸了。
[編輯2]
的人誰可能照顧/過這個絆倒......這修復它:
$("#prod-image").hover(function() {
$("#prod-overlay").stop(true).fadeTo("normal",1);
}, function() {
$("#prod-overlay").fadeTo("normal",0);
});
似乎有點不必要的給我,但我是誰批評jQuery的?
你是否也可以發佈任何CSS以及此代碼? – pixelbobby 2011-05-11 15:14:07
我想你應該使用'mouseenter'' mouseleave'來代替'over'根據你的需要 – diEcho 2011-05-11 15:30:33