我正在开发一个 jQuery 悬停滚动导航。我将scrollLeft
andscrollTop
方法与.mouseover()
and结合使用.mouseout()
。在 Chrome/Safari 中,一切似乎都运行良好。我注意到意外的行为。主要是滚动事件似乎只触发一次。我不确定是什么原因造成的,或者是否有办法解决这个问题。
无论如何,这是我的代码和网站链接,因此您可以自己查看行为。任何帮助都会很棒。
网址: http: //www.derekhutchinson.com
var delay = false;
function Movehorizonal(speed, ammount) {
var curpos = $('body,html').scrollLeft();
$("body,html").animate({
scrollLeft: curpos + ammount
}, speed);
delay = setInterval(function() {
//console.log("tick_horizontal");
var curpos = $('body,html').scrollLeft();
$("body,html").animate({
scrollLeft: curpos + ammount
}, speed);
}, speed);
}
$(function() {
var speed = 400;
$('#goLeft').mouseover(function() {
Movehorizonal(speed, -200);
});
$('#goLeft').mouseout(function() {
$("body,html").stop();
clearInterval(delay);
delay = false;
});
});