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