我正在使用此代码:
$(document).ready(function() {
var count;
var interval;
$("#hoverscroll").on('mouseover', function() {
var div = $('body');
interval = setInterval(function(){
count = count || 1;
var pos = div.scrollTop();
div.scrollTop(pos + count);
}, 100);
}).click(function() {
count < 6 && count++;
}).on('mouseout', function() {
// Uncomment this line if you want to reset the speed on out
// count = 0;
clearInterval(interval);
});
});
从这里开始:
https://stackoverflow.com/a/18189355/1063287
这里有一个jsFiddle:
问题
我可以设置的最低速度是多少?
当我将100
更改为25
时,它会加快速度。
答案 0 :(得分:3)
正如other answer here中提到的那部分代码不是jQuery,setInterval是本机JavaScript方法。 (请参阅Mozilla documentation和Microsoft documenation)
该方法接受“延迟”参数,告知每次执行之间要等待多少毫秒。
要让代码运行得更慢,只需提供更高的值。你现在拥有的是100毫秒,这意味着给定函数中的代码将在一秒内执行10次。因此,将100更改为1000将使其每秒执行一次,使其变慢。
答案 1 :(得分:0)
这与jQuery无关。
setInterval
可以使用的最小延迟值因浏览器而异。规范草案recommends a minimum of 4
(延迟4毫秒)。并非所有浏览器都这样做。您可以安全地使用0
来获取浏览器的最小值。
我可以设置的最低速度是多少?
最低速度是最高延迟,更大延迟会降低速度。我不知道setInterval
上的最大值限制。我见过人们使用五个分钟(300000
)。