jquery div定位

时间:2012-12-18 00:35:40

标签: jquery html positioning

有人可以帮助这个jsfiddle吗?

http://jsfiddle.net/4Ns44/

预期目的:当页面向下滚动时,链接在视图端口中展开,这很好用。但是当我们向上滚动时,我希望展开窗口停止它开始的位置。即,在标题div下面。现在,即使标题div变得可见,位置:fixed也会使其保持在顶部。

position:fixed

的一些帮助

1 个答案:

答案 0 :(得分:0)

如果我理解你要做什么,我想你想检查当scrollTop小于#expand的原始位置时。特别是:

var minY = $('#header').height();

scroll处理程序中:

// this will reset to the original position
if (top < minY) {
    $expand.css({position: "absolute", top: ''});
}

导致:http://jsfiddle.net/4Ns44/3/

var minY = $('#header').height();
var $expand = $("#expand");

$(window).scroll(function () {

    var top = $(window).scrollTop();

    if($expand.css("position") === "fixed") {

        if(top > expandY) {
            $expand.css({position: "absolute", top: expandY});
        } else if (top < minY) {
            $expand.css({position: "absolute", top: ''});
        }
    }
    else {
        if (top < minY) {
            $expand.css({position: "absolute", top: ''});
        } else if(top < expandY) {
            $expand.css({position: "fixed", top: 0});
        }
    }
});

如果我明白你要做什么......