javascript – 检测可滚动div中的元素何时不在视图中

我需要找到一个解决以下问题的好方法.我看到很多人都在询问是否有一个元素在页面或浏览器窗口的视图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.

上一篇:在OpenCV中绘制有角度的矩形


下一篇:SiamNet家族概览