有人可以告诉我在HTML文档中在浏览器窗口中查找第一段可见的方法。意思是我想要第一段不在文档内(可能大于窗口区域)但在浏览器窗口(可见屏幕)内。
* P.S除了获取文档中的所有'p'元素并遍历以找到第一个可见的元素 *
答案 0 :(得分:0)
我认为这就是你想要的:
$("p:visible:first")
答案 1 :(得分:0)
这应该有效:
$(document).ready(function(){
var paragraphs = $('p');
var scrollTop = $(window).scrollTop();
var scrollBtm = scrollTop + $(window).height();
paragraphs.each(function(e){
var top = $(this).offset().top;
if (top > scrollTop && top < scrollBtm){
alert("Win");
return false;
}
});
});
编辑:我意识到这是遍历p标签,但至少在“返回false”时,你不会遍历每一个,只是在当前视图之上的每一个。
编辑2:在document.ready
上创建段落数组答案 2 :(得分:0)
有一个jQuery插件,你可以尝试:www.appelsiini.net/projects/viewport
答案 3 :(得分:0)
你可以想出一些机制来根据它们的偏移来标记你的p标签。因此,当页面加载时,您必须遍历p标签(或更好的部分)并根据它们的偏移位置标记它们。然后将用户当前滚动位置与最近的偏移量p ...
进行比较是一件简单的事情