Ich habe Element E und füge einige Elemente hinzu. Plötzlich finde ich heraus, dass das nächste Element das erste Kind von E sein sollte. Was ist der Trick, wie geht das? Das Verschieben der Methode funktioniert nicht, da E ein Objekt und kein Array ist.
Ein langer Weg wäre, durch E's Kinder zu iterieren und sie Schlüssel ++ zu bewegen, aber ich bin sicher, dass es einen schöneren Weg gibt.
Antworten:
quelle
Version 2017
Sie können verwenden
Von MDN :
Auch in der Familie
insertAdjacent
gibt es die Geschwistermethoden:element.insertAdjacentHTML('afterbegin','htmlText')
für das direkteinnerHTML
Injizieren von HTML-Zeichenfolgen, wie, aber ohne alles zu überschreiben, so dass Sie den Unterdrückungsprozessdocument.createElement
überspringen und sogar ganze Komponenten mit Zeichenfolgenmanipulationsprozessen erstellen könnenelement.insertAdjacentText
zum Injizieren von Desinfektionszeichenfolgen in Elemente. nicht mehrencode/decode
quelle
element
Typdocument-fragment
, die nicht habeninsertAdjacent...()
. Bis wir eine bessere Antwort haben, ist es Ihre beste Vermutung, dasfragment
an a anzuhängendiv
. Machen Sie Ihre Dom-Manipulation und verwenden Sie dannRange.selectNodeContents()
undRange.extractContents()
erhalten Sie ein FragmentVersion 2018
Das ist modernes JS! Es ist besser lesbar als frühere Optionen. Es ist derzeit in Chrome, FF und Opera verfügbar.
PS Sie können Zeichenfolgen direkt voranstellen
developer.mozilla.org
Kann ich verwenden - 94% Mai 2020
Polyfill
quelle
.appendChild()
hinzuzufügen, aber es am Anfang hinzuzufügen,.prepend()
anstatt sich an die Konvention zu halten und sie zu nennen.prependChild()
append()
existiert auch, funktioniert genauso wieprepend()
, aber am Endeprepend
während ich feststellte, dass es das schon war. :( Ok, es gab es in der Vergangenheit nicht.Sie können es direkt in all Ihren Fenster-HTML-Elementen implementieren.
So was :
quelle
prepend
ist das Vanille-JS-Äquivalent, ohne dass ein Prototyp benötigt wird. Es wird Standard in ES7 sein, und Sie sollten es nach Möglichkeit für Ihre Anwendung verwendenAkzeptierte Antwort in eine Funktion umgestaltet:
quelle
eElement
Sinn macht. Und dafür muss ich die Frage lesen. Meistens überprüfe ich nur den Titel und gehe direkt zur Antwort, wobei ich die Details der Frage ignoriere.Es sei denn, ich habe falsch verstanden:
Oder
Obwohl es aus Ihrer Beschreibung so klingt, als ob eine Bedingung damit verbunden ist, so
quelle
Ich denke, Sie suchen nach der .prepend- Funktion in jQuery. Beispielcode:
quelle
Ich habe diesen Prototyp erstellt, um dem übergeordneten Element Elemente voranzustellen.
quelle
https://www.w3schools.com/jsref/met_node_insertbefore.asp
quelle