Inhaltsverzeichnis
Vorbereitung: Setzen Sie draggierbare Elemente
Grundlegender Prozess des Ziehens und Ablegens
Erweiterte Drag & Drop: Verschieben von Elementen oder Datei -Uploads
Notizen und FAQs
Heim Web-Frontend H5-Tutorial Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.

Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.

Jul 05, 2025 am 02:43 AM

Die Möglichkeit, einer Webseite Drag & Drop -Funktionen hinzuzufügen, besteht darin, die Drag & Drop -API von HTML5 zu verwenden, die ohne zusätzliche Bibliotheken nativ unterstützt wird. Die spezifischen Schritte sind wie folgt: 1. Setzen Sie das Element Draggable = "True", um den Zug zu aktivieren; 2. Hören Sie Dragstart, Dragover, Drop und Dragend Events; 3. Setzen Sie Daten in DragStart, blockieren Sie das Standardverhalten in Dragover und verarbeiten Sie die Logik im Drop. Darüber hinaus kann die Elementbewegung durch AppendChild erreicht werden, und das Hochladen von Dateien kann durch e.Datatransfer.files erreicht werden. HINWEIS: PURTDEFAULT () muss aufgerufen werden, um einen Tropfen auszulösen. Die mobile Seite unterstützt schlecht. Es wird empfohlen, eine Bibliothek von Drittanbietern zur komplexen Sortierung zu verwenden.

Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.

Es ist eigentlich nicht schwierig, Webseiten Drag & Drop -Funktionen hinzuzufügen, und es kann mithilfe der Drag & Drop -API von HTML5 erreicht werden. Es wird nativ unterstützt und erfordert nicht die Einführung zusätzlicher Bibliotheken. Es ist für Interaktionen wie Datei -Uploads und Elementsortierungen geeignet.

Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.

Vorbereitung: Setzen Sie draggierbare Elemente

Um ein Element gezogen zu werden, fügen Sie zuerst draggable="true" -Merkmal hinzu. Beispielsweise kann ein <div> oder Bild nicht standardmäßig gezogen werden, aber das Drag -Ereignis kann nach dem Hinzufügen dieser Eigenschaft ausgelöst werden. <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/175165462390139.jpeg" class="lazy" alt="Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu."><pre class='brush:php;toolbar:false;'> &lt;div draggable = &quot;true&quot;&gt; ziehe mich zum Versuch &lt;/div&gt;</pre><p> Dann müssen Sie mehrere Schlüsselereignisse anhören: <code>dragstart , dragover , drop und dragend . Diese Ereignisse entsprechen den Aktionen des Ziehensstarts, des Zeichnens in den Zielbereich, der Freigabe der Maus und den Ziehensenden.

Grundlegender Prozess des Ziehens und Ablegens

Der Luftwiderstandsvorgang ist hauptsächlich in drei Schritte unterteilt:

Fügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.
  • Starten Sie das Ziehen : Stellen Sie Dragdaten und Effekte im dragstart -Ereignis ein.
  • Ziehen Sie zum Zielbereich : Block Standardverhalten in dragover , andernfalls kann drop nicht ausgelöst werden.
  • Kostenlose Platzierung : Verarbeiten Sie Daten in drop und vollständige Logik.

Zum Beispiel möchten Sie eine Box in einen anderen Bereich ziehen:

 const dragel = document.querySelector (&#39;#Drag&#39;);
const Dropzone = document.querySelector (&#39;#Drop-Zone&#39;);

Dragel.AdDeVentListener (&#39;Dragstart&#39;, (e) => {
  e.Datatransfer.setData (&#39;text/plain&#39;, &#39;Dies ist gezogene Daten&#39;);
});

dropzone.addeventListener (&#39;dragover&#39;, (e) => {
  E.PreventDefault (); // Das Standardverhalten muss blockiert werden, um den Tropfen auszulösen
});

dropzone.addeventListener (&#39;Drop&#39;, (e) => {
  const data = e.datatransfer.getData (&#39;text/plain&#39;);
  console.log (&#39;empfangene Daten:&#39;, Daten);
});

Dadurch wird die grundlegendste Drag-and-Drop-Interaktion abgeschlossen.

Erweiterte Drag & Drop: Verschieben von Elementen oder Datei -Uploads

Zusätzlich zum Übergeben von Textdaten können Sie Drag & Drop verwenden, um DOM -Elemente zu verschieben oder Dateien hochzuladen.

Wenn Sie beispielsweise ein Element von einem Container zu einem anderen ziehen möchten, können Sie den Knoten beim drop an den neuen Ort anhängen:

 dropzone.addeventListener (&#39;Drop&#39;, (e) => {
  const id = e.datatransfer.getData (&#39;text/plain&#39;);
  const draggedel = document.getElementById (id);
  dropzone.appendchild (draggegedel);
});

Wenn es sich um ein Datei -Upload -Szenario handelt, z. B. ein lokales Bild auf die Seite, können Sie die Dateiliste über e.dataTransfer.files abrufen:

 dropzone.addeventListener (&#39;Drop&#39;, (e) => {
  const files = e.datatransfer.files;
  für (lass Datei von Dateien) {
    if (file.type.startswith (&#39;image/&#39;)) {
      const reader = new fileReader ();
      reader.onload = () => {
        const img = document.createelement (&#39;img&#39;);
        img.src = reader.result;
        Dropzone.AppendChild (IMG);
      };
      Reader.ReadasDataurl (Datei);
    }
  }
});

Dieser Teil des Codes kann nach dem Ziehen des Bildes direkt in die Vorschau gebracht werden.

Notizen und FAQs

Einige Details können leicht übersehen, wenn die HTML5 -Drag & Drop -API verwendet wird:

  • dragover muss preventDefault() aufrufen, andernfalls wird drop nicht ausgelöst
  • Unterschiedliche Browser können unterschiedliche Unterstützung für Drag & Drop -Stile wie Drag und Cursor unterstützen.
  • Die mobile Unterstützung für native Drag and Drop ist nicht sehr gut, und zusätzliche Touch -Events sind erforderlich
  • Wenn Sie eine komplexe Drag-and-Drop-Sortierung durchführen möchten, können Sie in Betracht ziehen, Drittbibliotheken (z. B. sortierbare Js) zu kombinieren.

Grundsätzlich alles, was es ist. Obwohl die Luftwiderstandsfunktion von HTML5 einfach ist, kann sie nach der Verwendung auch gute Interaktionseffekte erzeugen.

Das obige ist der detaillierte Inhalt vonFügen Sie Drag & Drop -Funktionen mit der HTML5 -Drag & Drop -API hinzu.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP-Tutorial
1505
276
Integration von CSS und JavaScript effektiv in die HTML5 -Struktur. Integration von CSS und JavaScript effektiv in die HTML5 -Struktur. Jul 12, 2025 am 03:01 AM

HTML5, CSS und JavaScript sollten effizient mit semantischen Tags, angemessenen Ladereihenfolge und Entkopplungsdesign kombiniert werden. 1. Verwenden Sie HTML5-Semantik-Tags, wie z. B. die Verbesserung der strukturellen Klarheit und Wartbarkeit, was dem SEO und barrierefreien Zugang förderlich ist. 2. CSS sollte eingerichtet werden, externe Dateien verwenden und nach dem Modul aufgeteilt werden, um Inline -Stile und verzögerte Ladeprobleme zu vermeiden. 3. JavaScript wird empfohlen, voran vorzugehen, und verwenden Sie Defer oder Async, um asynchron zu laden, um das Blockieren des Renders zu vermeiden. 4. Reduzieren Sie die starke Abhängigkeit zwischen den drei, führen Sie das Verhalten durch Datenattribute und den Status der Klassennamen und verbessern Sie die Zusammenarbeit Effizienz durch einheitliche Benennungsspezifikationen. Diese Methoden können die Seitenleistung effektiv optimieren und mit Teams zusammenarbeiten.

Erläuterung der HTML5 ` vs`  `Elemente. Erläuterung der HTML5 ` vs` `Elemente. Jul 12, 2025 am 03:09 AM

Es ist ein Element auf Blockebene, das zum Layout geeignet ist. Es ist ein Inline -Element, das zum Wickeln von Textinhalten geeignet ist. 1. Nehmen Sie ausschließlich eine Linie ein, Breite, Höhe und Ränder können festgelegt werden, die häufig im strukturellen Layout verwendet werden. 2. Keine Zeilenumbrüche, die Größe wird durch den Inhalt bestimmt und ist für lokale Textstile oder dynamische Operationen geeignet. 3. Bei der Auswahl sollte es beurteilt werden, ob der Inhalt unabhängiger Raum benötigt. 4. Es kann nicht verschachtelt werden und ist nicht zum Layout geeignet. 5. Priorität wird der Verwendung semantischer Etiketten zur Verbesserung der strukturellen Klarheit und Zugänglichkeit erteilt.

HTML5 -Video -Streaming -Techniken und Überlegungen HTML5 -Video -Streaming -Techniken und Überlegungen Jul 14, 2025 am 02:41 AM

Drei Punkte zu beachten, um HTML5 -Videos reibungslos zu machen: 1. Wählen Sie ein geeignetes Videoformat wie MP4, Webm oder OGG aus und geben Sie mehrere Formate oder ein einzelnes Format gemäß der Auswahl des Zielbenutzers an. 2. Verwenden Sie die adaptive Bit -Rate -Technologie wie HLS oder Dash, kombiniert mit HLS.js oder Dash.js, um eine automatische Klarheitschaltung zu erreichen. 3.. RETRUMBISSE PRELADING -Richtlinien und Serverkonfigurationen wie Vorspannungsattribute, Byte -Bereichsanforderungen, Komprimierung und Cache, um die Ladegeschwindigkeit zu optimieren und den Verkehrsverbrauch zu reduzieren.

Was sind die neuen Eingangstypen in HTML5 -Formularen verfügbar? Was sind die neuen Eingangstypen in HTML5 -Formularen verfügbar? Jul 12, 2025 am 03:07 AM

Html5IntroducucuedNewinputTyphatenhanceFunctionFunctionality undUseRexperienceByimProvingValidation, UI und MobileKeyboardLayouts.1.EmailvalidateSeMailAddresSandSupportsmultiplegers.UrlchKKSForvalidwebedriggersandGergersandGhergeridwebedriggersandriggersurl-optimierungskks

Entwicklung von Webspielen mithilfe von HTML5 -Leinwand und Game -APIs Entwicklung von Webspielen mithilfe von HTML5 -Leinwand und Game -APIs Jul 14, 2025 am 03:08 AM

HTML5CANVAS ist eine API zum Zeichnen von Grafiken und Animationen auf Webseiten, kombiniert mit Gameapis, um featurereiche Webspiele zu aktivieren. 1. Setzen Sie Elemente und erhalten Sie 2D -Kontext; 2. Verwenden Sie JavaScript, um Objekte zu zeichnen und Animationsschleifen zu implementieren. 3.. Verarbeiten Sie die Benutzereingabe, um das Spiel zu steuern. 4. Kombinieren Sie APIs wie Gamepad, Webaudio, Zeiger und Vollbild, um die interaktive Erfahrung zu verbessern. 5. Die Leistung optimieren und die Ressourcenbelastung verwalten, um einen reibungslosen Betrieb zu gewährleisten.

Wie greifen Sie mit der HTML5 -Geolocation -API des Benutzers des Benutzers zu? Wie greifen Sie mit der HTML5 -Geolocation -API des Benutzers des Benutzers zu? Jul 13, 2025 am 02:23 AM

Um den aktuellen Standort des Benutzers zu erhalten, verwenden Sie die HTML5 -GeolocationAPI. Diese API enthält Informationen wie Breitengrad und Längengrad nach der Benutzerautorisierung. Die Kernmethode ist GetCurrentPosition (), für die erfolgreiche und fehlerhafte Rückrufe behandelt werden müssen. Achten Sie gleichzeitig auf die Voraussetzung für die HTTPS, die Mechanismus der Benutzerautorisierung und die Verarbeitung von Fehlercode. ① Rufen Sie GetCurrentPosition auf, um die Position einmal zu erhalten, und ein Fehlerrückruf wird ausgelöst, wenn sie fehlschlägt. ② Der Benutzer muss es autorisieren, sonst kann er nicht erhalten werden und kann nicht mehr aufgefordert werden. ③ Fehlerverarbeitung sollte zwischen Ablehnung, Zeitüberschreitung, nicht verfügbarer Ort usw.; ④ Erleben Sie hochpräzise, Zeitüberschreitungszeit usw. und können über den dritten Parameter konfiguriert werden. ⑤ Die Online -Umgebung muss HTTPS verwenden, sonst kann sie vom Browser eingeschränkt werden.

Erläutern Sie die Attribute 'Async` und' Defer 'für Skripte in HTML5. Erläutern Sie die Attribute 'Async` und' Defer 'für Skripte in HTML5. Jul 13, 2025 am 03:06 AM

Der Unterschied zwischen Async und Aufschub ist der Ausführungszeitpunkt des Skripts. Mit Async können Skripte parallel heruntergeladen und unmittelbar nach dem Herunterladen ausgeführt werden, ohne die Ausführungsreihenfolge zu garantieren. Defer führt Skripte in der Reihenfolge nach Abschluss der HTML -Parsen aus. Beide vermeiden es, HTML -Parsen zu blockieren. Die Verwendung von Async ist für eigenständige Skripte wie die Analyse des Code geeignet. Defer eignet sich für Szenarien, in denen Sie auf das DOM zugreifen oder sich auf andere Skripte verlassen müssen.

Erkennen von Browserunterstützung für bestimmte HTML5 -Funktionen. Erkennen von Browserunterstützung für bestimmte HTML5 -Funktionen. Jul 13, 2025 am 02:05 AM

Die Erkennung, ob der Browser HTML5 -Funktionen unterstützt, kann durch JavaScript -Laufzeitüberprüfung oder die Verwendung der Modernizr -Bibliothek implementiert werden. 1. Verwenden Sie native JavaScript, um Funktionen wie 'LocalStorage'inWindow zu überprüfen oder ein Canvas -Element zu erstellen und die GetContext -Methode aufzurufen. 2. Einführung der Modernizr -Bibliothek, um das HTML -Element automatisch Klassennamen zu erkennen und hinzuzufügen und Modernizr -Objektaufrufe anzugeben. 3. Für nicht unterstützte Funktionen können Sie das Polyfill -Fallback -Schema ausprobieren, aber Sie müssen die Leistung und die funktionale Integrität abwägen. Am Ende sollten Sie eine geeignete Methode entsprechend den tatsächlichen Bedürfnissen auswählen, um eine Überverkäufer oder die blinde Annahme der Benutzerumgebung zu vermeiden.

See all articles