我有縮略圖畫廊和被點擊縮略圖時,當前圖像淡出,並在新的圖像變淡。防止多次點擊,直到動畫完成(jQuery的)
不過,我想停下來多次點擊,因此圖像必須在能夠點擊新的縮略圖之前完全淡出。
我該如何用下面的代碼來做到這一點?
非常感謝,
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>TEST</title>
<script type='text/javascript' src='jquery-1.9.1.js'></script>
<style type='text/css'>
#imageWrap{
position:relative;
overflow:hidden;
height:534px;
width:800px;
}
.next{
display:none;
}
#imageWrap img{
width: 800px;
position: absolute;
top: 0;
left: 0;
background-color: #000;
}
</style>
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
$('.thumbnail').on('click',function(){
$('#imageWrap').append('<img src="' + $(this).attr('src') + '" class="next" />');
$('#imageWrap .active').fadeOut(5500);
$('#imageWrap .next').fadeIn(4000, function(){
$('#imageWrap .active').remove();
$(this).addClass('active');
});
});
});//]]>
</script>
</head>
<body>
<img src="dimming/1.jpg" class="thumbnail" alt="A" width="40" height="40"/>
<img src="dimming/2.jpg" class="thumbnail" alt="B" width="40" height="40"/>
<img src="dimming/C.jpg" class="thumbnail" alt="C" width="40" height="40"/>
<img src="dimming/D.jpg" class="thumbnail"alt="D" width="40" height="40"/>
<img src="dimming/E.jpg" class="thumbnail" alt="E" width="40" height="40"/>
<div id="imageWrap">
<img src="dimming/C.jpg" alt="Main Image" width="800" height="534" class="active" />
</div>
</body>
</html>
我其實很簡單地做到這一點。點擊我添加一個div到圖像容器,它完全位於容器內。當所有的動畫完成後,我只是刪除這一層。實際上,它可以通過多種方式完成,但這種方式我不必費心去除/添加偵聽器。 – 2013-04-23 09:24:01
可能重複http://stackoverflow.com/questions/4304883/disable-until-animation-complete – 2013-04-23 09:26:27
愛德華,你有這樣的例子,聽起來很有趣。 – 2013-04-23 09:38:16