获取相对于视口顶部的元素位置

我需要获取元素相对于视口顶部的顶部位置,而不是整个文档。

我试过了offset().top; 返回相对于文档的顶部位置,我尝试了scrollTop() ,它始终返回0 ,无论该元素在视口中是否实际可见。

你可以使用它来计算它

 $('#element').offset().top - $(window).scrollTop() 

工作实例

 function get(){ $('#output').html($('#element').offset().top - $(window).scrollTop()); } get(); $(window).scroll(get); 
 #element { width:100px; height:100px; background:red; } #output { position:fixed; background:#000; color:#fff; width:100%; }