後、私は...同じページで関数はjQueryのAJAXのHTMLインジェクション
var href=$('.poplight').attr("href");
$('.poplight').attr("href","#");
$('.poplight').click(function(){
$.get(href, function(data) {
$("#popup-contents").html(data)
// inserts <div id="additionalInfo">
// <legend id="legend-params">Legend</legend>
// <div id="toggle"> This should toggle </div> </div>
}
);
});
</script>
をWebページ上で次のAJAX呼び出しを持って動作しない、トグルというリンクの.jsスクリプトがあります#toggle divは凡例がクリックされるたびに表示されます。これはすべて別々のページ(凡例のトグルだけ)でうまく動作しますが、私はそれをAjax呼び出しで動作させることはできません。私は、jqueryが特定のドームに「付着」するときに行う必要があると考えています...確かに実際に知るためにjqueryの内部について十分に知りません。
ここに外部スクリプトがあります。私はonloadで試して、HTMLでインラインで追加しました。これらの関数は、凡例をクリックすると実行されます(.show()メソッドの後に警告( 'test')を挿入すると、警告ウィンドウが表示されます)。
$('#toggle').hide();
$("#legend").toggle(
function() {
$("#toggle").show("slide", {direction: "up"}, 200);
},
function() {
$("#toggle").hide("slide", {direction: "up"}, 200);
});
助けがあれば助かります。
代わりに** ['.on()'](http://api.jquery.com/on/)**を使用してください。このようにして、ハンドラはその場で作成される要素にバインドされます。あなたが今それをやっているやり方は、DOMの準備ができている要素に動作をバインドするだけです。 – m90
http://stackoverflow.com/questions/3796799/jquery-not-working-in-ajax-loaded-divs – OneThreeSeven
お返事ありがとうございます...彼らに行きましょう。 – loeschg