.on
の代わりにjqueryのメソッドを使用してい.live
ます。
$(function(){
$('.mydiv').live('click', function(){ //my code})
})
$(function(){
$('.mydiv').on('click','/*selector*/', function(){ //my code})
})
関数のセレクターに何を入れるか知りたいです.on
。'mydiv'に関数を適用したい
jqueryのドキュメントから:selector: A selector string to filter the descendants of the selected elements that trigger the event. If the selector is null or omitted, the event is always triggered when it reaches the selected element.
試す
$(function(){
$(document).on('click','.mydiv', function(){
//your code
})
})
$(function(){
$(document).on('click','.mydiv', function(){ //my code});
});
イベントを委任する場合、バインド時に存在する要素のクリックをリッスンします。イベント ハンドラーは、バインド時に DOM に実際に存在する要素にのみアタッチできるため、これは上記のステートメントの最初の要素になります。 、次に、ターゲット (クリックされた要素) 要素が、実際にリッスンしている要素 (上記のステートメントの 2 番目の要素) と一致するかどうかを確認します。
document
常に存在しますが、実際の要素に近い要素を使用する方がよいでしょう。
すべての要素がドキュメント内にあるため、ページ全体であるドキュメントのクリックをリッスンし、クリックがステートメントの 2 番目の要素から発生したかどうかを確認し、発生した場合は関数を起動します。明らかに、実際の要素に近づくほど、クリック機能を起動して除外される要素が少なくなります。
出発点として、常にこの関数の Jquery API を見てください。
可能な用途:
$('.parent').on('click','.child', function(){
//code
})
このビデオはあなたに素晴らしい概要を与えるかもしれません
.on( events [, selector] [, data], handler(eventObject) )
events "click" や "keydown.myPlugin" など、スペースで区切られた 1 つ以上のイベント タイプとオプションの名前空間。 selectorイベントをトリガーする選択された要素の子孫をフィルタリングするためのセレクター文字列。セレクターが null または省略されている場合、イベントは選択された要素に到達したときに常にトリガーされます。 dataイベントがトリガーされたときに event.data でハンドラーに渡されるデータ。 handler (eventObject)イベントがトリガーされたときに実行する関数。値 false は、単純に false を返す関数の省略形としても使用できます。
$("#dataTable tbody tr").on("click", function(event){
alert($(this).text());
});
$("#dataTable tbody").on("click", "tr", function(event){
alert($(this).text());
});