Javascript / Jquery在窗口中找到最顶部的段落

时间:2013-02-22 13:38:41

标签: javascript jquery html css

有人可以告诉我在HTML文档中在浏览器窗口中查找第一段可见的方法。意思是我想要第一段不在文档内(可能大于窗口区域)但在浏览器窗口(可见屏幕)内。

* P.S除了获取文档中的所有'p'元素并遍历以找到第一个可见的元素 *

4 个答案:

答案 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 ...

进行比较是一件简单的事情