2011-11-03 13 views

答えて

4

$(el).onは、イベントタイプ、直接イベントおよび委任イベントのイベントをバインドする統合された方法を開発者に提供します。また、オブジェクトを渡すことで複数のイベントを同時にバインドすることもできます(documentationの2番目の例)

また、いくつかのキーストロークを保存して、それが価値があるかどうかを確認します。

2

使用すると、1つ以上をバインドすることができますにしてください私には思えます複数のイベントで同じことをしたい場合は、コードを複製したり、別の関数を作成したりする必要はありません。

+0

1つの関数を他の関数と複数のイベント型にバインドすることもできます。これはイベント処理の統一であり、複数のイベントを複数のイベントに割り当てることができます。 – JAAulde

+0

確かに、特に言及された '.click()'ではありません! – JJJ

+0

ああ、それは本当です – JAAulde

0

これは、さまざまな他のイベントバインディング関数を組み合わせたり置き換えたりするためにステージングされているようです。それらをすべてバインドする1つの関数! (LOTR geekery ftw)

+0

ベルのリング... – roselan

1

これは、新しい.on().bind().delegate().live()に多少の重複機能の融合であるというのが私の理解です。より統一されたインプリメンテーションへの実装の組み合わせと同じくらい、APIのマージです。

2

$(el).click(...)は、$(el).bind('click', ...)の省略形です。 documentation for bind()documentation for on()を比較すると、いくつかの違いがあります。これはかなりよくbind()ドキュメントの最初の段落で要約されている

:jQueryの1.7のよう

、.on()メソッドは、ドキュメントへ 添付イベントハンドラの好ましい方法です。以前のバージョンでは、 .bind()メソッドを使用して、イベントハンドラを 要素に直接取り付けることができます。ハンドラは、 のjQueryオブジェクトの現在選択されている要素にアタッチされています。したがって、これらの要素は.bind()の呼び出しである のポイントに存在する必要があります。より柔軟なイベントバインディングについては、.on()または.delegate()のイベントデリゲートの説明 を参照してください。

関連する問題