0

我目前正在使用以下 JavaScript 函数来检测元素是否滚动到视图中:

function isScrolledIntoView(elem) {
    var docViewTop = $(window).scrollTop();
    var docViewBottom = docViewTop + $(window).height();
    var elemTop = $(elem).offset().top;
    return ((elemTop <= docViewBottom) && (elemTop >= docViewTop));
}

现在,我需要区分这个元素是在页面加载时自动滚动(例如通过#anchor-tag)还是手动滚动到视图中。

这样做的好方法是什么?

4

1 回答 1

0

单击锚点时,URL 哈希值会发生变化。您可以使用它window.onhashchange来检测:

window.onhashchange = function() {
    console.log(window.location.hash);
}
于 2013-10-08T22:24:47.023 回答