2

jQueryウィンドウのスクロールバー検出器を作成しましたが、ブラウザーウィンドウのサイズを変更すると、スクロールバーのステータスが表示から非表示に、またはその逆に変更され、ステータス通知機能は静的なままになります。厳密にjavascriptを使用して、AJAX呼び出しなしで簡単な方法で、サイズ変更のたびにステータス通知機能を継続的に更新するにはどうすればよいですか?

さらなる文脈のために、私は基本的に、コンテンツがウィンドウサイズを超えない場合に半無限スクロールの解決策を考え出そうとしています。皆さんの1人がこれを理解した場合、非常に要求が高く人気のあるスクロール負荷効果を取り入れようとする多くのUI開発者にとって非常に有益です。前もって感謝します。これが私のデモです。

$(window).resize(function () {

    ///????

});
4

1 に答える 1

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 開発者の皆さんが笑顔で踊り、祝ってくれることを願っています :)。

于 2012-10-30T00:00:37.173 に答える