Javascript 如何判断div的中心是否在视口中?

Javascript 如何判断div的中心是否在视口中?,javascript,jquery,Javascript,Jquery,在jquery中,如何判断div的中心是否在视口中 我试图将窗口scrolltop与div的scrolltop+height/2进行比较,但没有给出正确的结果 我想要垂直中心。如果使用jQuery,我会尝试使用offset方法。像这样: var loc = $('div').offset(), h = $('div').outerHeight(), w = $('div').outerWidth(); console.log((loc.left + w / 2 > 0)

在jquery中,如何判断div的中心是否在视口中

我试图将窗口scrolltop与div的scrolltop+height/2进行比较,但没有给出正确的结果


我想要垂直中心。

如果使用jQuery,我会尝试使用
offset
方法。像这样:

var loc = $('div').offset(),
    h = $('div').outerHeight(),
    w = $('div').outerWidth();

console.log((loc.left + w / 2 > 0)
      && (loc.left + w / 2 < winW)
      && (loc.top + h / 2 > 0)
      && (loc.top + h / 2 < winH)
     );
var loc=$('div').offset(),
h=$('div').outerHeight(),
w=$('div').outerWidth();
控制台日志((位置左侧+w/2>0)
&&(位置左侧+w/20)
&&(位置顶部+h/2

在这个JSFIDLE中有一个演示:。

发布您现在使用的代码,或者一个示例链接。计算偏移量,而不是滚动。