Ich habe dieses schlechte Gefühl darüber, wie ich größere Mengen von HTML einfügen. Nehmen wir an, wir haben:jquery: schnellste DOM-Einfügung?
var html="<table>..<a-lot-of-other-tags />..</table>"
und ich möchte dies in
$("#mydiv")
vorher setzen Ich habe so etwas wie
var html_obj = $(html);
$("#mydiv").append(html_obj);
Ist es richtig, th bei jQuery ist html
zu analysieren, um DOM-Objekte zu erstellen? Gut, das ist, was ich irgendwo lesen (UPDATE: Ich meinte, dass die ich gelesen habe, analysiert jQuery die html die gesamte DOM-Baum von Hand zu erstellen - seine Unsinn richtig ?! ), also habe ich meinen Code:
$("#mydiv").attr("innerHTML", $("#mydiv").attr("innerHTML") + html);
Fühlt sich schneller an, oder? Und ist es richtig, dass dies äquivalent ist zu:
document.getElementById("mydiv").innerHTML += html
? Oder macht Jquery noch ein paar zusätzliche teure Sachen im Hintergrund?
Würde gerne Alternativen lernen.
Das funktionierte für mich, aber ich musste append() verwenden, nicht appendChild(). Tippfehler oder hat der Methodenname geändert? –
Ich bin mir nicht sicher, wie das vorbeigekommen sein könnte, aber ich glaube nicht, dass es eine umbenannte Methode ist. Ich werde meinen Beitrag aktualisieren. – Prestaul
appendChild() ist die w3c-DOM-Methode, die das gleiche wie append() in jQuery (ungefähr) tut – xj9