我有這些「上一個」和「下一個」按鈕,移動我的網站上的一些幻燈片。 單擊一個時,它將轉到下一張或上一張幻燈片,並使用css3過渡屬性進行動畫製作,並更改滑動容器的左側屬性+ =或 - = 800px。使得onclick函數無法工作,直到css動畫完成
#sliding-container {
position: relative;
left: -1600px;
transition: all 2s ease;
-moz-transition: all 2s ease;
-webkit-transition: all 2s ease;
-o-transition: all 2s ease;
}
.slide {
width: 800px; height: 500px;
background-color: white;
transition: all 2s ease;
-moz-transition: all 2s ease;
-webkit-transition: all 2s ease;
-o-transition: all 2s ease;
}
這是JS:_
function slide(direction) {
if (direction == 'prev') {
$("#sliding-container").css('left', '+=800px');
}
else if (direction == 'next') {
$("#sliding-container").css('left', '-=800px');
}
}
這張幻燈片功能獲得的onclick稱爲:_
<div class="fade" id="fade1" onclick="slide('prev')"><</div>
<div class="fade" id="fade2" onclick="slide('next')">></div>
的問題
但問題是,如果你點擊下一個或上一個按鈕快兩倍,它會混亂,這就是爲什麼,我希望該功能不會再次點擊直到2秒鐘通過(即,直到過渡完成)。我怎樣才能做到這一點?
謝謝,我會試試看,但我需要更多的細節,你能否告訴我該怎麼做,我真的不明白如何根據情況寫出你給出的那一行js。 – 2013-04-10 16:12:59
當然,所以看你的代碼,你可能會想這樣: $('#slide-container')。bind('transitionend webkitTransitionEnd mozTransitionEnd',function(e){running = false;}); 這將綁定到滑動容器的任何轉換結束,這是你正在過渡,並且它完成後它將做你想要它在該功能。 – Fernker 2013-04-10 16:23:58
我很抱歉,但沒有工作,另一方面,我確實解決了這個問題,我把它作爲答案發布。謝謝反正,你確實給了我一個關於如何使用計時器的想法。 – 2013-04-10 17:01:53