$(document).ready(function(e) {
$('span#pijlr').click(function(e) {
var slide = 500;
var variable = $('#gallcont').css('left');
var urechts = "-1000px";
if(variable > urechts) {
$('#gallcont').animate({'left': '-=' +slide+ 'px'},'fast','linear');
}
});
$('span#pijll').click(function(e) {
var slide = 500;
var variable = $('#gallcont').css('left');
var ulinks = "0px";
if(variable < ulinks) {
$('#gallcont').animate({'left': '+=' +slide+ 'px'},'fast','linear');
}
});
});
我为一个简单的幻灯片库编写的代码。一切正常,除非我快速单击箭头按钮。它将超出我设置的值(尿布和绳)。
我尝试将'stop()'放在.animate之前,但这没有帮助。希望你们能给我一些有关如何解决此问题的建议。提前致谢!
最佳答案
尝试将bool
放入click函数中,以确定它是否已处于过渡模式。
var inClick = false;
$(document).ready(function(e) {
$('span#pijlr').click(function(e) {
if(inClick) return;
inClick = true;
var slide = 500;
var variable = $('#gallcont').css('left');
var urechts = "-1000px";
if(variable > urechts) {
$('#gallcont').animate({'left': '-=' +slide+ 'px'},'fast','linear', function() { inClick = false; });
}
else inClick = false;
});
$('span#pijll').click(function(e) {
if(inClick) return;
inClick = true;
var slide = 500;
var variable = $('#gallcont').css('left');
var ulinks = "0px";
if(variable < ulinks) {
$('#gallcont').animate({'left': '+=' +slide+ 'px'},'fast','linear', function() { inClick = false; });
}
else inClick = false;
});
});
这样,您的用户必须等待转换完成才能再次单击。
关于jquery - 单击幻灯片库的速度太快(jquery),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8887173/