Creative Saplings

HTML5 – Drag & drop (Română)

ianuarie 18, 2021
No Comments
Reclame

Drag and Drop (DnD) este un concept puternic de interfață cu utilizatorul care facilitează copierea, reordonarea și ștergerea de articole cu ajutorul clicurilor mouse-ului. Acest lucru permite utilizatorului să facă clic și să țină apăsat butonul mouse-ului deasupra unui element, să îl tragă într-o altă locație și să elibereze butonul mouse-ului pentru a plasa elementul acolo.

Pentru a obține funcționalitatea de glisare și fixare cu HTML4 tradițional, dezvoltatorii ar trebui fie să fie nevoiți să utilizeze programare JavaScript complexă sau alte cadre JavaScript cum ar fi jQuery etc.

Acum HTML 5 a venit cu un API Drag and Drop (DnD) care aduce suport DnD nativ în browser este mult mai ușor de codat.

HTML 5 DnD este acceptat de toate browserele majore precum Chrome, Firefox 3.5 și Safari 4 etc.

Trageți și fixați evenimente

Există un număr de evenimente care sunt declanșate în timpul diferitelor etape ale operației de drag and drop. Aceste evenimente sunt enumerate mai jos –

Sr.No. Evenimente & Descriere
1

dragstart

Se declanșează când utilizatorul începe să tragă obiectul.

2

dragenter

A fost declanșat când mouse-ul este mutat pentru prima dată peste elementul țintă în timp ce are loc o tragere. Un ascultător pentru acest eveniment ar trebui să indice dacă este permisă o picătură peste această locație. Dacă nu există ascultători sau ascultătorii nu efectuează nicio operațiune, atunci nu este permisă o scădere în mod implicit.

3

glisare

Acest eveniment este declanșat pe măsură ce mouse-ul este deplasat peste un element când are loc o glisare. De cele mai multe ori, operația care are loc în timpul unui ascultător va fi aceeași cu evenimentul dragenter.

4

dragleave

Acest eveniment este declanșat când mouse-ul părăsește un element în timp ce are loc un drag. Ascultătorii ar trebui să elimine orice marcatori de evidențiere sau de inserare utilizați pentru feedback.

5

glisați

Se declanșează de fiecare dată când mouse-ul este mutat în timp ce obiectul este glisat.

6

drop

Evenimentul drop este declanșat asupra elementului în care a avut loc drop-ul la sfârșitul operației de tragere. Un ascultător ar fi responsabil pentru recuperarea datelor trase și inserarea acestora în locația de plecare.

7

dragend

Se declanșează când utilizatorul eliberează butonul mouse-ului în timp ce trage un obiect.

Notă – Rețineți că sunt declanșate numai evenimentele de tragere; evenimentele mouse-ului, cum ar fi mousemove, nu sunt declanșate în timpul unei operații de tragere.

Obiectul Transfer de date

Metodele de ascultare a evenimentelor pentru toate evenimentele de tragere și plasare acceptă obiectul eveniment care are un atribut readonly dataTransfer.

Event.dataTransfer returnează obiectul DataTransfer asociat evenimentului după cum urmează –

function EnterHandler(event) { DataTransfer dt = event.dataTransfer; .............}

Obiectul DataTransfer conține date despre tragere și operațiunea drop. Aceste date pot fi recuperate și setate în funcție de diferite atribute asociate cu obiectul DataTransfer așa cum se explică mai jos –

Sr.No. Atributele DataTransfer și descrierea lor
1

dataTransfer.dropEffect

  • Returnează tipul de operație care este selectat în prezent.

  • Acest atribut poate fi setat, pentru a schimba operațiunea selectată.

  • Valorile posibile sunt none, copy, link și move.

2

dataTransfer.effectAllowed

  • Returnează tipurile de operațiuni care urmează să fie permise.

  • Acest atribut poate fi setat, pentru a modifica operațiunile permise.

  • Valorile posibile sunt none, copy, copyLink, copyMove, link, linkMove, move, all și neinițializate.

3

dataTransfer.types

Returnează o listă DOMStringList formate care au fost setate în evenimentul dragstart. În plus, dacă fișierele sunt trase, atunci unul dintre tipuri va fi șirul „Fișiere”.

4

dataTransfer.clearData ()

Elimină datele din formatele specificate. Elimină toate datele dacă argumentul este omis.

5

dataTransfer.setData (format, date)

Adaugă datele specificate.

6

data = dataTransfer.getData (format)

Returnează datele specificate. Dacă nu există astfel de date, returnează șirul gol.

7

dataTransfer.files

Returnează o listă de fișiere a fișierelor trase, dacă există.

8

dataTransfer.setDragImage (element, x, y)

Folosește elementul dat pentru a actualiza feedback-ul de tragere, înlocuind orice feedback specificat anterior.

9

dataTransfer.addElement (element)

Adaugă elementul dat la lista elementelor utilizate pentru a reda feedback-ul de tragere.

Procesul de glisare și fixare

pașii care trebuie efectuați pentru implementarea operației Drag and Drop –

Pasul 1 – Realizarea unui obiect glisabil

Iată pașii care trebuie luați –

  • Dacă doriți să trageți un element, trebuie să setați atributul glisabil la adevărat pentru acel element.

  • Setați un ascultător de evenimente pentru răstoarnă datele pe care le trageți.

  • Dragstart-ul ascultătorului de evenimente va seta efectele permise (copiere, mutare, legătură sau o combinație).

Următorul este exemplul pentru a face un obiect glisabil –

Acest lucru va produce următorul rezultat –

Pasul 2 – Lăsarea obiectului

Pentru a accepta un drop, ținta drop trebuie să asculte cel puțin trei evenimente.

  • Evenimentul dragenter, care este utilizat pentru a determina dacă ținta drop trebuie să accepte sau nu dropul . Dacă picătura trebuie acceptată, atunci acest eveniment trebuie anulat.

  • Evenimentul de dragover, care este utilizat pentru a determina ce feedback trebuie afișat utilizatorului. Dacă evenimentul este anulat, atunci feedback-ul (de obicei cursorul) este actualizat pe baza valorii atributului dropEffect.

  • În cele din urmă, evenimentul drop, care permite scăderea reală care urmează să fie efectuat.

Urmează exemplul de a arunca un obiect într-un alt obiect –

Acest lucru va produce următorul rezultat –

Reclame

Articles
Previous Post

Diferența dintre JDK, JRE și JVM

Next Post

Numele câinilor de țară

Lasă un răspuns Anulează răspunsul

Articole recente

  • Cele mai bune școli de fotografie din lume, 2020
  • Cetățenii suverani își duc filosofia anti-guvernamentală la drumuri
  • Ghid de costuri de reparații stuc
  • Muckrakers (Română)
  • Oncologie de precizie

Arhive

  • februarie 2021
  • ianuarie 2021
  • decembrie 2020
  • noiembrie 2020
  • octombrie 2020
  • septembrie 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.