0

関数のカスタムフォローイベントを追加および削除するためのjqueryサポートデリゲート関数を知っています。元

$("body").delegate("#p", "click", cfunc);

しかし、ページがロードされたときに関数を委任する方法は?

編集------

私の質問の詳細については、より多くのexコードを示しています::)

私は関数のカスタム名を持っています=cfunc() 今、その中で多くのイベントを実行するためにページが読み込まれるときにそれを呼び出す必要があります。

ページがロードされたときに、ビューアーはいくつかのイベントを作成します(例:サイズ変更、スクロール...)undelegate cfunc()新しい変数で再度呼び出す必要があります。

--- 編集 2 -----

申し訳ありませんが、私はより多くのコードを書きます:

これは委任したい関数です

function bbbb_scroll(pos)
    {
        $(document).scroll(function() {
            var _currentpos = $(window).scrollTop();

            if (_currentpos > pos) {
                console.log('match');
            }
        });
    }

今、ステージの準備ができたらページに追加したい

$(document).ready(function() {
        $(window).delegate("body", "resize", bbbb_scroll);
    });

結局のところ、ユーザーresizeがブラウザのウィンドウを使用するとき、undelegate bbbb_scroll関数が必要であり、新しい var ( on posvariable )で再度呼び出す必要があります

4

3 に答える 3

1
$(document).ready(function(){

    var position = 100;

    var scrollCallback = function(pos){

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

        if (_currentpos > pos) {
            console.log('match');
        }
    };

    var resizeCallback = function(){

        $(document).unbind('scroll');

        $(document).on('scroll', function(){

            scrollCallback(position);

        });
    };

    $(window).on('resize', resizeCallback);

});

http://api.jquery.com/on/

http://api.jquery.com/ready/

于 2012-12-05T13:45:59.213 に答える
0

readyメソッドに関数を (匿名または名前で) 渡すことにより、ドキュメントの読み込み時に実行する関数をデリゲートします。

匿名の方法:

$(document).ready(function(){
   ...
});

名前付き関数

function myReadyHandler(){..}

$(document).ready(myReadyHandler);
于 2012-12-05T13:46:54.583 に答える
0

これはかなり明白です

jQueryのドキュメントを見てください

$(document).ready(function(){
    //- do your stuff    
});
于 2012-12-05T13:44:48.220 に答える