我需要找到一个解决以下问题的好方法.我看到很多人都在询问是否有一个元素在页面或浏览器窗口的视图Port的内部或外部.我需要能够复制这个动作,但是在滚动的DIV中,有溢出:滚动例如.有没有人知道这个具体行动的好例子?
提前致谢.
解决方法:
我以前遇到过同样的问题,我最后得到了以下函数.第一个参数是元素检查,第二个是检查元素是否部分in-view.it仅用于垂直检查,你可以扩展检查水平滚动.
function checkInView(elem,partial)
{
var container = $(".scrollable");
var contHeight = container.height();
var contTop = container.scrollTop();
var contBottom = contTop + contHeight ;
var elemTop = $(elem).offset().top - container.offset().top;
var elemBottom = elemTop + $(elem).height();
var isTotal = (elemTop >= 0 && elemBottom <=contHeight);
var isPart = ((elemTop < 0 && elemBottom > 0 ) || (elemTop > 0 && elemTop <= container.height())) && partial ;
return isTotal || isPart ;
}
检查它在jsFiddle.