重置窗口上的滚动条检测调整jQuery

时间:2012-10-29 23:55:30

标签: function scrollbar jquery window-resize

我创建了一个jQuery窗口滚动条检测器但是当我重新调整浏览器窗口大小时,反过来改变滚动条状态,从可见到不可见,反之亦然,状态通知器保持静态。如何通过严格的javascript以简单的方式不使用AJAX调用,让状态通知程序在每个重新调整大小时不断更新?

对于进一步的上下文,如果内容不超过窗口大小,我基本上试图提出半无限滚动的解决方案。如果你们其中一个人想到这一点,那么很多UI开发人员试图融入高度需求和流行的滚动加载效果将是非常有益的。提前致谢。这是我的demo

$(window).resize(function () {

    ///????

});

1 个答案:

答案 0 :(得分:1)

您可以使用所谓的功能来实现此目的。在Javascript中,函数实际上是对象,可以简单地存储在变量中并作为参数传递。

举个例子:

//first define your function - maybe give it a better name than I did :)
var detectScrollbar = function () {
    if($(window).height() >= $(document).height()){
        $('#statusNotifier1').fadeIn("slow");
        $('#statusNotifier2').hide();
    }
    else
    {
        $('#statusNotifier1').hide();
        $('#statusNotifier2').fadeIn("slow");
    }
};

//call it initially
detectScrollbar();

//pass it to .resize() so it will be called when the event fires
$(window).resize(detectScrollbar);

你可以将这整件事放入$(document).ready();

享受jsFiddle Demo的乐趣。我希望所有那些悲伤的UI开发人员都会在脸上微笑着跳舞,庆祝:)。