2015-10-14 67 views
3

我一直在我们的网站上工作,并注意到当用户点击下一个按钮时,主页上的滑块加速。jquery滑块开始加速

当你没有选择下一个箭头时,它可以滑动,但是当你这样做时突然加速。

我认为这是什么原因造成它加速:

$(document).ready(function() { 

setTimeout("$('.caro-arrow.caro-arrow-r').click()", 8000); 
$('.caro-arrow.caro-arrow-r').click(function() { 
setTimeout("$('.caro-arrow.caro-arrow-r').click()", 8000); 
}); 

}) 

没有人有任何想法如何,我可以修复它,这样它不会滑动,当选择了下一个箭头更快?

感谢

+2

,应清除任何先前设置的超时。但是你的代码无论如何都没有多大意义。为什么点击的元素想让你在经过一段时间后点击这个元素?! –

+0

您处于递归无限循环中,因为当文档准备就绪时,您在点击时触发另一个触发器的触发器。这是无限的。删除第一个setTimeout,让第二个单击函数。 –

回答

2

你应该清除的setTimeout

var clears=''; 
    setInterval("$('.caro-arrow.caro-arrow-r').click()", 8000); 
    $('.caro-arrow.caro-arrow-r').click(function() { 
    clearTimeout(clears); 
    clears = setTimeout(function(){changeSliderFunction()/*call change slider image function*/}, 8000); 
    }); 

当用户单击箭头点击启动时执行的,如果用户点击汽车无则setTimeout的执行很多次,它增加滑块速度

+0

听起来像反正OP会更好地使用间隔,而不是触发单击事件,但调用引用的函数 –

+0

我试过上面的代码,它似乎停止加速问题,但滑块在页面加载时自动停止滑动现在 – user3615681

+0

现在再次检查 –