Ich habe diesen einfachen Code. http://jsfiddle.net/borth/BmEZv/ Wenn Sie einmal auf den Link klicken, funktioniert es gut. Wenn Sie es ein zweites Mal anklicken, funktioniert es nicht. Da der HTML-Code nach dem Laden des DOM in HTML geladen wird, habe ich .on, .bind, .delegate und .live ausprobiert. Keine von ihnen funktioniert außer .live, die veraltet ist (ich benutze jquery 1.7.2).Alternative zu jquery leben, die funktionieren kann
Kann jemand erklären, warum .live ist die einzige Funktion, die funktioniert und warum die anderen nicht funktionieren (oder wenn ich etwas falsch mit den anderen Funktionen mache).
$(document).ready(function(){
$(".OpenPopup").bind('click', function(e){
alert('test .OpenPopup');
// do something
return false;
});
$(".EditIcon").bind('click', function(){
alert('test .EditIcon');
// do something
$("#ABC").html('<div class="EditIcon OpenPopup" pwidth="800" pheight="500" ptitle="EditText">click here again</div>');
});
});
<div id="ABC"><div class="EditIcon OpenPopup" pwidth="800" pheight="500" ptitle="EditText">click here</div></div>
'.On' ist die offizielle Ersatz für' .Live' –
die jQuery docs FAQ Antwort zu lesen 'why' – charlietfl
Ich habe es mit .on zu arbeiten(). Ich hatte die falsche Syntax. –