jQuery 1.9 .live() は関数ではありません 質問する

jQuery 1.9 .live() は関数ではありません 質問する

最近、jQuery を 1.8 から 2.1 にアップデートしました。突然、 が.live()動作しなくなったことに気付きました。
エラーが発生しますTypeError: $(...).live is not a function

代わりに使用できる方法はありますか.live()?

ベストアンサー1

jQueryは.live()バージョン1.9以降では削除されました

つまり、バージョン 1.8 以前からアップグレードする場合、以下の移行ガイドに従わないと、問題が発生します。 単に!.live()に置き換えてはいけません。.on()


検索と置換を始める前に読んでください:

ライブ サイトでのクイック/ホット フィックスの場合は、パラメーターが異なるため、関数を に置き換えないでくださいliveon

.live(events, function)

次のようにマッピングされます:

.on(eventType, selector, function)

(child) セレクターは非常に重要です。何らかの理由でこれを使用する必要がない場合は、 に設定してくださいnull


移行例1:

前に:

$('#mainmenu a').live('click', function)

その後、子要素 ( a) をセレクターに移動します.on()

$('#mainmenu').on('click', 'a', function)

移行例 2:

前に:

$('.myButton').live('click', function)

その後、要素をセレクター.myButtonに移動し.on()、最も近い親要素(できれば ID 付き)を見つけます。

$('#parentElement').on('click', '.myButton', function)

親として何を設定すればよいかわからない場合は、document常に次のようにします。

$(document).on('click', '.myButton', function)

参照:

おすすめ記事