我正在制作div块的js-slider。我两边都有箭。我想在鼠标结束时水平滚动我的滑块。在此之前,我使用以下代码完成了所有工作:
jQuery('.control')
.bind('click', function(){
jQuery('#slideInner').animate({
'marginLeft' : SlideWidth * SlideNumber
});
});
但是,如果我想滑动所有内容,直到鼠标移到.control
上,该怎么办
发布于 2011-06-05 03:03:54
当元素悬停时,您应该有一个延迟循环的setInterval(...)
var interval = null; // I use global var for this example - globals are discouraged in general
jQuery('.control')
.hover(function(){
interval = setInterval(function() { // start looping when mouse enters
jQuery('#slideInner').animate({
'marginLeft' : SlideWidth * SlideNumber
});
},
1000); // this is how many milliseconds you want to wait between animations
}, function(){
clearInterval(interval); // stop looping when mouse is out
});
注意:这是一种过度简化,需要进一步的工作(例如,检查边界是否超出范围,等等),但它的目的是展示如何应用setInterval(...)
来解决您的问题。
https://stackoverflow.com/questions/6238741
复制相似问题