jQuery滚动div顶部

时间:2013-01-25 19:57:18

标签: jquery sticky

我有一个div,它在清除标题部分后滚动页面。似乎工作正常,但滚动回到顶部时,它不会回到页面加载时开始的确切位置。

脚本:

$(document).ready(function() {
$(window).scroll(function() {
    if ($(window).scrollTop() > 266) {
        var $myDiv = $("#scrollingNavigation");
        $myDiv.stop();
        $myDiv.animate({ marginTop: ($(window).scrollTop()) - 266 });
    }
    else {
        ($(window).scrollTop() - 266);
    }
});
});

HTML:

<div id="scrollingNavigation">My content and image here</div>

实施例: http://jsfiddle.net/masada/zZgcG/4/

尝试慢慢滚动窗口,距离顶部仅约8-10px。快速滚动,div将从顶部向所有不同类型的空间顶部休息。 相当混乱。

1 个答案:

答案 0 :(得分:1)

对您的代码稍作修改..

$(document).ready(function() {
    $(window).scroll(function() {
        var $myDiv = $("#scrollingNavigation");
        if ($(window).scrollTop() > 50) {
            $myDiv.stop();
            $myDiv.animate({ marginTop: ($(window).scrollTop()) + 50 });
        }
        else {
            $myDiv.stop();
            $myDiv.css({ marginTop: 0 });
        }
    });
});

请在此处找到工作演示“http://jsfiddle.net/zZgcG/10/”。