2009-08-04 98 views
1

我有一个div列表,每次我想要转到下一个div时,按下一个键。我需要检查该div是否在屏幕外,如果是这样,我需要移动屏幕以使用锚点或其他方法显示该div。如何查看屏幕外是否有元素

这样做的最佳选择是什么?

只是为了保密,在我的情况下,屏幕外意味着现在看不到的东西,而不是向下滚动。因此,如果您位于顶部的StackOverflow主页上,则整个页面上的最后一个问题将不在屏幕上。

回答

2

最佳选择是通过获取其y偏移量,并检查窗口高度并计算滚动页面的位置来将页面滚动到元素,然后您可以将页面设置为该点的动画效果。

//height of your div 
var scroll = 250; 
//animate from actual position to 250 px lower in 200 miliseconds 
$(window).animate({"scrollTop": "+="+scroll+"px"}, 200); 

所以这不是完整的代码,但它可能会给你的想法。

退房jQuery的scrollTop

希望它能帮助, 思南。