滚动后修复div

时间:2013-08-14 09:39:01

标签: jquery scroll

我想使用此代码修复此页http://www.spiaggiati.it/antani/中的div#order

$(document).ready(function () {
    $("#order").data("top", $("#order").offset().top);
    $(window).scroll(fixDiv("order"));
})

函数fixDiv是:

function fixDiv(div_id) {
    var $div = $("#"+div_id);
    if ($(window).scrollTop() > $div.data("top")) { 
        $div.css({'position': 'fixed', 'top': '0', 'width': '100%'}); 
    }
    else {
        $div.css({'position': 'static', 'top': 'auto', 'width': '100%'});
    }
}

我无法使其工作,似乎scroll()没有捕获事件。哪里错了?

谢谢。

1 个答案:

答案 0 :(得分:1)

将函数作为参考传递时,无法提供参数。尝试更改此内容:

$(window).scroll(fixDiv("order"));

对此:

$(window).scroll(function() {
    fixDiv("order"));
});