1 UmsetzungsprinzipDies geschieht mithilfe der Ereignisse dragstart/ondragover/ondrop des DOM-Elements. Das gezogene Element wird abgerufen, wenn das Ziehen beginnt, und dann wird das Ziehen zugelassen. Schließlich wird die Maus angehoben und an der neuen Position abgelegt. Hier wird die Methode event.preventDefault() verwendet. Viele Leute sind möglicherweise verwirrt. Hier ist eine kurze Einführung event.preventDefault(): Diese Methode verhindert, dass der Browser die mit dem Ereignis verknüpfte Standardaktion ausführt. Wir verwenden es im Dragover-Ereignis, da die mit Dragover verknüpfte Standardaktion darin besteht, zu verhindern, dass Daten oder Elemente in anderen Elementen platziert werden. Daher müssen wir das Standardereignis über event.preventDefault() verhindern, damit wir das Ziehen des Elements an eine neue Position zulassen können. <!-- Ziehen Sie das Div, um die Reihenfolge zu ändern. Gilt für das Umschalten der Ebenenreihenfolge in GIS --> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <Kopf> <meta http-equiv="Inhaltstyp" content="text/html; charset=utf-8" /> <Titel></Titel> <style type="text/css"> Körper{ Anzeige: Flex; Polsterung: 100px; Flex-Richtung: Spalte; } div{ Breite: 100px; Höhe: 100px; Textausrichtung: zentriert; } </Stil> </Kopf> <Text> <div style="Hintergrundfarbe: rot;Breite:200px;Höhe:200px;" draggable="true">Rot</div> <div style="background-color: green;width:100px" draggable="true">Grün</div> <div style="background-color: blue;" draggable="true">Blau</div> </body> <Skripttyp="text/javascript"> let div = document.getElementsByTagName("div"); lass Container = null; // Dragstart-, Dragover- und Drop-Ereignisse durchlaufen und an jedes Div binden for(let i=0;i<div.length;i++){ div[i].ondragstart=Funktion(){ Container=dies } div[i].ondragover=Funktion(){ event.preventDefault(); } div[i].ondrop=Funktion(){ Debugger; wenn(Container!=null&&Container!=dies){ // Die konkrete Idee ist die gleiche wie beim Austausch von Variablenwerten let temp=document.createElement("div"); document.body.replaceChild(temp,this); //Verwende das neu erstellte Div, um die Zielposition einzunehmendocument.body.replaceChild(this,container); //Das Ziel-Div wird an der Startposition platziertdocument.body.replaceChild(container,temp) //Das Start-Div wird an der Zielposition platziertdebugger; console.log('Geschäftslogik ausführen') } } } </Skript> </html> Dies ist das Ende dieses Artikels über das Implementierungsbeispiel zum Ziehen und Tauschen von Div-Positionen in JavaScript. Weitere relevante Inhalte zum Ziehen und Tauschen von Div-Positionen in JavaScript finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung, wie MySQL Phantom-Lesevorgänge löst
>>: Detaillierte Erläuterung der Nginx-Rewrite-Jump-Anwendungsszenarien
Inhaltsverzeichnis Tabelle/index.js Tabelle/Model...
Hyperlink Hyperlinks sind die am häufigsten verwen...
Inhaltsverzeichnis 1. Verwendung 2. Lösen Sie das...
Eingabe-Subsystem-Framework Das Linux-Eingabesubs...
Inhaltsverzeichnis 1 Master-Slave-Lese-/Schreibtr...
Dieser Artikel stellt hauptsächlich die Implement...
1. Offizielle Einführung grep ist ein häufig verw...
border-radius: CSS3 abgerundete Ecken Syntax: bor...
Inhaltsverzeichnis 1: Bereiten Sie das https-Zert...
1. Schreiben Sie das Shell-Skript crontab.sh #!/b...
Im vorherigen Artikel haben wir über MySQL-Transa...
1: Tag-Selektor Der Tag-Selektor wird für alle Ta...
MySQL 8.0.12 Download- und Installations-Tutorial...
Holen Sie sich die Anzahl der Verbindungen --- Ho...
Vorwort Der Quellcode umfasst insgesamt nur mehr ...