我有多個圖像。當我將鼠標懸停在每張圖片上時,它會變爲另一張圖片,並在鼠標懸停時返回到其上一張圖片。問題是,當我們在每個圖像上快速執行此過程時,每個圖像都會保留其懸停圖像,但不會恢復到之前的圖像。但是當我慢慢地做這個效果和功能正常工作。我只給出兩個圖像的以下代碼片段。請幫我解決這個問題。對不起我寫的英文不好。Mouseenter和Mouseleave工作不正常
HTML部分
<div style="float:left;">
<a class="dialog-link" href="#" >
<img src="images/twitter.png" width="126" height="78" border="0" class="twitter_h"/>
</a>
</div>
<div style="float:left; margin-left:83px;">
<a class="dialog-link" href="#" target="_blank">
<img src="images/linkedin.png" width="232" height="78" border="0" class="linkedin_h"/></a>
</div>
JQUERY PART
<script>
$(function(){
var link_open=false;
var openGif_t = $(".twitter_h").attr("src");
var closedGif_t = openGif_t.replace("twitter.png", "follow1.png");
var openGif_l = $(".linkedin_h").attr("src");
var closedGif_l = openGif_l.replace("linkedin.png", "connect1.png");
$(".twitter_h")
.mouseenter(function() {
$(this).fadeOut(function(){
$(this).attr("src", closedGif_t);
$(this).fadeIn(150);
});
})
.mouseleave(function() {
$(this).fadeOut(function(){
$(this).attr("src", openGif_t);
$(this).fadeIn(150);
});
});
$(".linkedin_h")
.mouseenter(function() {
//alert(closedGif)
$(this).fadeOut(function(){
$(this).attr("src", closedGif_l);
$(this).fadeIn(150);
});
})
.mouseleave(function() {
// alert($(this).attr("src"));
$(this).fadeOut(function(){
$(this).attr("src", openGif_l);
$(this).fadeIn(150);
});
});
});
如果你希望它工作順利,那麼增加你的淡入功能的時間。 –
嘗試使用'.stop()'確保當前正在進行的動畫在啓動新動畫之前被終止。 。'$(本).stop()淡出(...);'。 –