0

bind() jQuery API から:

jQuery 1.7 の時点で、.on() メソッドは、イベント ハンドラーをドキュメントにアタッチするための推奨メソッドです。

そして、change() jQuery API から:

このメソッドは、.bind('change', handler) のショートカットです。

しかし、それが bind() のもので言うように、change() が使用されるべきではないという言及はありません。

jQuery 1.7 の時点で bind() の代わりに on() を使用するメリットはありますか? jQuery 1.7 の時点で、change() および bind() または on() を使用する同様のショートカットはありますか? 最終的に、change() または on() を使用する必要がありますか?

前もって感謝します。

4

1 に答える 1

1

ショートカット メソッド(例: ) は、単に内部的.change()に呼び出します。bind

jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
"change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) {

    // Handle event binding
    jQuery.fn[ name ] = function( data, fn ) {
        if ( fn == null ) {
            fn = data;
            data = null;
        }

        return arguments.length > 0 ?
            this.bind( name, data, fn ) : //Just call `bind`
            this.trigger( name );
    };
    //...

そしてbind単に呼び出すon

//...
bind: function( types, data, fn ) {
    return this.on( types, null, data, fn ); //Just call `on`
},
//...

したがって、自分自身に電話する方がおそらく非常にわずかに高速onです。実際には速度に違いはありませんので、使いやすい方を使ってください。

于 2012-06-26T09:32:10.037 に答える