javascript 滚动时是视图中的元素吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 滚动时是视图中的元素吗?相关的知识,希望对你有一定的参考价值。

<h2>Scroll Down! &dArr;</h2>
<span></span>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
function isScrolledIntoView(elem) {
    var $window = $(window),
        docViewTop = $window.scrollTop(),
        docViewBottom = docViewTop + $window.height(),
        elemTop = $(elem).offset().top,
        elemBottom = elemTop + $(elem).outerHeight();
    return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop));
}

$(window).on("scroll", function() {

    // Example 1
    if (isScrolledIntoView('span')) {
        $('span').text('Hey there!');
    } else {
        $('span').text('Good bye!');
    }

    // Example 2
    $('div').each(function() {
        if (isScrolledIntoView(this)) {
            $(this).addClass('red');
        } else {
            $(this).removeClass('red');
        }
    });

});

以上是关于javascript 滚动时是视图中的元素吗?的主要内容,如果未能解决你的问题,请参考以下文章

javascript 将DOM元素滚动到视图中

javascript 元素滚动到视图时的回调

iOS中的滚动位置

[TimLinux] JavaScript 代码控制滚动条移动到顶部/底部

Android:禁用列表视图内的元素滚动

将元素滚动到可滚动容器中的视图中