检查元素是否在屏幕上可见

我正在尝试确定某个元素在屏幕上是否可见。为此,我试图使用offsetTop查找元素的垂直位置,但是返回的值不正确。在这种情况下,除非向下滚动,否则该元素不可见。但是尽管如此,当我的屏幕高度为703时,offsetTop返回的值为618,因此根据offsetTop,该元素应该可见。


我正在使用的代码如下所示:


function posY(obj)

{

  var curtop = 0;


  if( obj.offsetParent )

  {

    while(1)

    {

      curtop += obj.offsetTop;


      if( !obj.offsetParent )

      {

        break;

      }


      obj = obj.offsetParent;

    }

  } else if( obj.y )

    {

     curtop += obj.y;

    }


  return curtop;

}

先感谢您!


偶然的你
浏览 355回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript