如何将此脚本更改为自动滚动?

时间:2018-05-17 10:33:47

标签: javascript autoscroll

我有一个脚本,它有一个滚动网站的按钮,但我需要它在页面加载时自动滚动。我需要脚本滚动完全如下所示,除了按钮。谁能为我改变它?我是javascript的新手,谢谢..

function scroll(element, speed) {
    var distance = element.height();
    var duration = distance / speed;
    element.animate({scrollTop: distance}, duration, 'linear');
}

$(document).ready(function() {
    $("button").click(function() {
        scroll($("html, body"), 0.015); // Set as required
    });
});

2 个答案:

答案 0 :(得分:0)

在窗口加载时调用滚动功能,这将在加载完成后滚动页面。

$(window).on('load', function(){
 scroll($("html, body"), 0.015); // Set as required
})

答案 1 :(得分:0)

您可以尝试以下JavaScript代码

var div = $('.autoscroller');

$('.autoscroller').bind('scroll mousedown wheel DOMMouseScroll mousewheel keyup', function(evt) {
    if (evt.type === 'DOMMouseScroll' || evt.type === 'keyup' || evt.type === 'mousewheel') {

    }
    if (evt.originalEvent.detail < 0 || (evt.originalEvent.wheelDelta && evt.originalEvent.wheelDelta > 0)) { 
        clearInterval(autoscroller);
    }
    if (evt.originalEvent.detail > 0 || (evt.originalEvent.wheelDelta && evt.originalEvent.wheelDelta < 0)) { 
        clearInterval(autoscroller);
    }
});

var autoscroller = setInterval(function(){
    var pos = div.scrollTop();
    if ((div.scrollTop() + div.innerHeight()) >= div[0].scrollHeight) {
        clearInterval(autoscroller);
    }
    div.scrollTop(pos + 1);
}, 50);

这里有关于页面的加载。文本自动滚动到页面末尾。