我使用jquery .animate()函数制作了幻灯片。
我通过使用以下代码调用函数来点击下一个按钮动画:
$(document).ready(function() {
$("#next").click(function(){next_slide()});
});
它的工作正常,但我希望用户无法点击下一个按钮,直到上一个动画完成。
例如:如果用户将以毫秒为单位点击下一个按钮10次,则幻灯片放映将保持动画10次。
我希望如果第一个动画正在运行,那么如果用户点击甚至10次,但是在上一个动画之前不会调用函数next_slide()。
我只想要:
一次点击=一次调用next_slide()
以毫秒为单位进行多次点击=一次
请告诉我怎么做。
要查看代码,请访问http://jsfiddle.net/77NzW/2/
最好的问候
答案 0 :(得分:4)
然后使用标志变量。在制作动画时将其设为true。完成动画后,将其设为false。
示例代码:
$(document).ready(function() {
$("#next").click(function(){
if(flag == false)
next_slide()}
);
});
这不是确切的代码。请先执行一些更改,例如声明变量......等等。
答案 1 :(得分:1)
您可以在点击下一个或上一个时简单地设置一个布尔变量var slideOver = true
。并且如果设置了该变量,则阻止执行滑动div的代码。
请参阅小提琴 - :http://jsfiddle.net/77NzW/6/