サーバーからJSONデータをダウンロードし、新しいテーブル行(のような$('<tr></tr'))を作成してドキュメントに挿入するJavaScriptを維持するようになりました。
aノードは、ある時点で次のように作成されます。
var a = $('<a class="foo" href="#"></a>');
その後、イベントは次のようにバインドされます。
a.click(function () {
// yadda yadda
return false;
});
唯一の問題は、これが機能していないように見えることです。バインディングスルーon()も非推奨でもありませんlive()。ハンドラーは単に「無視」され、起動せず、ページが一番上にスクロールします(のためにhref="#")。イベントをバインドするとき、要素はすでにappendDOMに編集されています。どんな助けでも大歓迎です。
頭に浮かぶいくつかのコンテキスト情報:要素はデータを反復処理するループ内で作成されますが、JavaScriptでスコープが実際に奇妙なことをしている場合を除いて、問題にはなりません。さらに、要素で試した他のすべてが機能します。コンテンツ、スタイルを変更できますが、イベントバインディングのみが機能しません。そしてもちろん、jQueryのバージョンは1.8.3です。