0

我正在使用这段代码:

$(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:

http://jsfiddle.net/Lcsb6/

问题

我可以设置的最低速度是多少?

当我改变它时10025它会加速。

4

2 回答 2

3

正如其他答案中提到的,部分代码不是 jQuery,setInterval 是原生 JavaScript 方法。(参见Mozilla 文档Microsoft 文档

该方法接受一个“延迟”参数,告诉每次执行之间要等待多少毫秒。

要让代码运行得更慢,只需给出更高的值。您目前拥有的是 100 毫秒,这意味着给定函数内的代码将在一秒钟内执行 10 次。因此将 100 更改为 1000 将使其每秒执行一次,从而使其变慢。

于 2013-10-20T10:00:04.993 回答
0

这与 jQuery 无关。

您可以使用的最小延迟值setInterval因浏览器而异。规范草案建议至少4(延迟 4 毫秒)。并非所有浏览器都这样做。您可以安全地使用0来获取浏览器的最小值。

我可以设置的最低速度是多少?

最低速度将是最高延迟,更大的延迟会减慢速度。我不知道. setInterval我见过人们使用五分钟( 300000)。

于 2013-10-20T09:35:17.000 回答