获取滚动高度并将其设置为绝对定位元素的顶部

时间:2013-05-31 09:11:25

标签: jquery html css

我需要在灯箱中显示一张图片。

我给了位置:早点修复。但是当图像高度大于屏幕高度时,会导致问题。

问题是:

现在我需要使用absoulte概念。但问题是,如果我在CSS中给出静态“顶部”值,当用户点击页面底部的链接时,灯箱图像将显示在页面顶部。

要做:

我需要将页面的滚动高度设置为top:lightbox imageimage的值。我试过scrollTop()。但没有得到。

怎么做?

你能告诉我吗?

修改 这是我的概念:http://jsfiddle.net/velmurugansp/F7z4f/1/

<div stle="position:relative">
<div style="height:1000px">
Top Contents
</div>
<img src="http://ftape.com/model/wp-content/uploads/2011/02/Caroline-Corinth-Models1-The-Model-Wall_4.jpg" width="630" height="630" style="position:absolute; top:0; left:-50%; margin-left:315px;display:block" id="img" />
</div>

<script>
scrollHeight=document.scrollTop();
$("#img").css("top",scrollHeight);
</script>

我需要给出顶部:1000px;到“#img”。 Cos前一个元素高度的高度是1000px;

3 个答案:

答案 0 :(得分:1)

设置图像的顶部位置可以使用如下:

jQuery(document).ready(function() {
    $(window).scroll(function() {
        var scrollHeight = $(window).scrollTop();
        var img = $('#img');
        if (scrollHeight < $(document).height()-img.height()-20) {
            img.css("top", scrollHeight);
        }
    });
});

jsfiddle

答案 1 :(得分:0)

Yoy需要获取body或html元素的scrollTop(),而不是其他元素。

答案 2 :(得分:0)

你能用CSS改变图像的高度吗?它可能会阻止所有jQuery的必要性。

相关问题