滚动功能不适用于元素

时间:2016-10-04 16:02:57

标签: javascript scroll

也许这是一个愚蠢的问题,但我想知道为什么这不起作用。

我尝试使用动画滚动到此元素。 通常元素是:

scrollTo(document.body, 0, 100);

我更改了名为'here'的变量中的元素。 如果我在逻辑上思考,代码必须滚动到元素'here',到0px,持续时间,但我不工作。有谁能告诉我什么出错了?

我的代码:

document.getElementById('scroll-to-elm').onclick = function () {
var here = document.getElementById('tohere');

    scrollTo(here, 0, 100);
}

function scrollTo(element, to, duration) {
        if (duration < 0) return;
        var difference = to - element.scrollTop;
        var perTick = difference / duration * 2;

    setTimeout(function() {
        element.scrollTop = element.scrollTop + perTick;
        scrollTo(element, to, duration - 2);
    }, 10);
}

0 个答案:

没有答案