jquery – 单击时重置setinterval

前端之家收集整理的这篇文章主要介绍了jquery – 单击时重置setinterval前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我写过这个简单的旋转木马.目前我正在使用setInterval以一定的时间间隔运行我的nextSlide函数.我想在用户点击导航链接一段时间后推迟计时器的运行.

看看这里
http://jsbin.com/uzixi3/3/edit

关于如何编写其余部分的任何反馈都会很好.

解决方法

你可以这样做: http://jsbin.com/uzixi3/5/edit

间隔部分在这里:

var int = setInterval($.fn.nextSlide,3000);
$("#slideNavigation a").click(function() {
  clearInterval(int);
  setTimeout(function() {
    setInterval($.fn.nextSlide,3000);
  },10000);
});

我做了一些其他的调整,例如,你可以使用switch语句使.nextSlide()更具可读性和更便宜.

总的来说,没有理由将这些函数作为jjquery本身的扩展方法,因为它们不与对象交互,它们可以只是作用于闭包的方法,如下所示:http://jsbin.com/uzixi3/6/edit

如果这些方法实际上是在$(‘#slideContainer’)上运行,例如$(‘#slideContainer’).nextSlide()和你的方法中你使用this.animate()和this.css()它可能会更有意义,只是一些想法可以帮助你变得更灵活.

猜你在找的jQuery相关文章