私信  •  关注

Sonny Lloyd

Sonny Lloyd 最近创建的主题
Sonny Lloyd 最近回复了
9 年前
回复了 Sonny Lloyd 创建的主题 » 当内容位于可见视区时启动jquery动画

我正在寻找一种方法来查看元素是否会很快出现在视图中,因此通过扩展上面的片段,我成功地做到了这一点。我想我会把这个留在这里以防万一

elm=要检查的元素是否在视图中

scrollement=您可以通过 窗口 或具有滚动条的父元素

offset=如果你想在元素在屏幕前200px时触发它,那么通过200

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