JavaScript-Bewegungselement im DOM
Sagen wir, ich habe drei <div>
Elemente auf einer Seite. Wie kann ich die swap-Positionen der ersten und Dritten <div>
? jQuery ist in Ordnung.
InformationsquelleAutor der Frage core | 2009-09-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Trivial mit jQuery
Wenn Sie möchten, tun Sie wiederholt, müssen Sie mit verschiedenen Selektoren da die divs sind, behalten Ihre ids, wie Sie bewegt werden.
InformationsquelleAutor der Antwort tvanfosson
Gibt es keine Notwendigkeit für die Verwendung einer Bibliothek für eine so triviale Aufgabe:
Dies trägt der Tatsache Rechnung, dass
getElementsByTagName
gibt eine live-NodeList, die automatisch aktualisiert, um die Reihenfolge der Elemente in den DOM-wie Sie manipuliert werden.Könnte man auch verwenden:
und gibt es verschiedene andere mögliche Permutationen, wenn Sie Lust haben, zu Experimentieren:
zum Beispiel 🙂
InformationsquelleAutor der Antwort NickFitz
und verwenden Sie es wie diese:
wenn Sie nicht wollen, um jQuery verwenden könnten Sie leicht anpassen, die Funktion.
InformationsquelleAutor der Antwort Darin Dimitrov
Diese Funktion mag seltsam erscheinen, aber es stützt sich stark auf standards, um richtig zu funktionieren. In der Tat kann es scheinen besser zu funktionieren als die jQuery-version, die tvanfosson gepostet, die scheint, zu tun, die tauschen nur zweimal.
Welche Normen Besonderheiten gilt es Vertrauen?
InformationsquelleAutor der Antwort Ionuț G. Stan
.vor und .nach
Verwenden moderne vanilla JS! Die Weise, die besser/sauberer als vorher
Browser-Unterstützung - 84% Global, 87% aus den USA, wie von Mar '18
InformationsquelleAutor der Antwort Gibolt
Jquery-Ansatz erwähnt, auf die Spitze arbeiten.
Sie können auch verwenden, JQuery und CSS .Sagen für e.g auf ein Div, die Sie angewendet haben class1 und div2, die Sie angewendet haben Klasse class2 (sagen wir für e.g-Klasse von css stellt eine spezifische position auf dem browser), können Sie jetzt tauschen Sie die Klassen jquery oder javascript (das wird sich ändern die position)
InformationsquelleAutor der Antwort Rajat
Sorry für diesen thread stoßen
Ich stolperte über die "swap-DOM-Elemente-problem" und ein wenig rumprobiert
Das Ergebnis ist ein jQuery-native "Lösung" zu sein scheint ist auch wirklich schön (leider weiß ich nicht was ist passiert auf der jQuery-Interna, wenn dies zu tun)
Code:
Die jQuery-Dokumentation sagt, dass
insertAfter()
bewegt das element und nicht KlonenInformationsquelleAutor der Antwort storrm