Könnyebb valamit elvinni és elhelyezni, mint leírni, hogy mit kell vinni és hova kell tenni. Természetesen egér, vagy hasonló eszköz nélkül nem lehet semmit sem kiválasztani, sem megadni, de a dolgok jelenlegi állásában is nagyon természetes és kényelmes a drag and drop ötlet használata.
Az ötlet hatóköre nem csak webáruházak, digitális könyvtárak, kereső ill Információs rendszerek, hanem az alkalmazott terület is. Az ötlet nagyon jól alkalmazható az interaktívan, programozó közreműködése nélkül létrehozott és karbantartott oldalak és elemeik fejlesztésében.
Az ötlet leírása
Válassza ki, mozgassa és helyezze el - az ötlet természetes és kényelmes. Egyszerűen elképesztő, hogy nem akkor született, amikor az egér a számítógép nélkülözhetetlen kellékévé vált.
A legkézenfekvőbb példa a termék kiválasztása egy webáruházban. Válassza ki a kívánt terméket az egérrel, és húzza a kosárba – egyszerűen, természetesen és kényelmesen. Fájlfeltöltés: Szintén praktikus ötlet egy dokumentumot a böngészőablakon kívülre vinni és oldalelemre helyezni, ezzel kezdeményezve a dokumentum átvitelét a szerverre.
A fejlesztő számára a "húzás" ötlete az oldalelemek manipulálása a címkék koordinátáinak és méretének manuális újraszámítása nélkül, több elem kiválasztásának és igazításának lehetősége, valamint a blokkcímkék oldalainak mozgatása.
HTML és CSS - nagyszerű nyelvek a címkék és azok tervezési stílusainak leírása, de ha a fejlesztőnek lehetősége van interaktívan manipulálni az oldalelemeket anélkül, hogy manuálisan újraszámolná a koordinátákat és a méreteket, ez kényelmesebbé és hatékonyabbá teszi a munkát.
Könnyű fájlátvitel
"Húzd és vidd": a fordítás angolról oroszra szó szerint úgy hangzik, mint "húzd és vidd". A gyakorlatban jobban hangzik és működik: választott, áthelyezett és elengedett – egyszerűen és természetesen.
Nagyon egyszerű a fájlátvitel végrehajtása egy oldalon egy oldalra, egy szerverre vagy más célra.
Ebben a példában az asztalon több fájlt jelöltünk ki az egérrel (bal oldali ábra). A kiválasztásnál a bal egérgombot nyomtuk meg és a kiválasztott „ment” a kosárba. A böngésző maga mutatta meg, hogyan történik ez, írt egy „másolási” tippet, és létrehozta az áthelyezett fájlok körvonalait.
Amikor az egér a kosár fölött volt, a látogató elengedte a bal egérgombot, megtörtént a drag and drop esemény, és a webhely oldalán (alsó képen) a JavaScript kód képes volt fogadni és feldolgozni a látogató által megadott összes fájlt. az oldalra (oldalra).
Megvalósítás leírása
Az eljárást végrehajtó kód nagyon egyszerű. Még egy kezdő fejlesztő is meg tudja ismételni ezt bármilyen felhasználási esetben.
Itt a felhasználói felületet két címke képviseli: scPlaceFile (ez maga a kosár, ahová a fájlokat el szeretné helyezni) és az scPlaceFiles (ez a fájlok feldolgozásának eredménye, jelen esetben ezek listája).
Az oldal logikája a következő. Amikor az oldal betöltődik a böngészőbe, az "ondrop" eseménykezelő hozzá van rendelve a kosárhoz - vagyis a többi esemény blokkolva van, és nem kerül felhasználásra.
Az oldal normálisan működik, de amint a látogató kiválasztja a fájl(oka)t és áthúzza a kosár képére, vagyis az scPlaceFile címkére, a „fájlok megérkeztek” esemény feldolgozásra kerül.
Ez a kezelő egyszerűen megjeleníti a fájlok listáját. Számuk az event.dataTransfer.files.length, az egyes fájlok információi pedig az event.dataTransfer.files[i].name fájlban találhatók. A kapott adatokkal való teendőket a fejlesztő határozza meg, ebben az esetben egyszerűen létrejön a fogadott fájlok listája.
A feldolgozás után az esemény blokkolva lesz, és nem terjed tovább. Erre azért van szükség, hogy a böngésző ne vegyen részt amatőr tevékenységben, és ne zavarja a kapott információk feldolgozását.
DnD és külső adatok
Ebben a technológiában bevett gyakorlat a képek „fogd és vidd” módszerrel történő feltöltése a szerverre. A fejlesztő általában létrehoz egy fájlfeltöltési űrlapot (1), amely a szokásos módon működik (2). A látogató megteheti normál mód válassza ki a fájlokat és töltse fel őket.
Ha azonban a látogató az űrlap egy bizonyos helyére húz és ejti, akkor a fájlnév mező (fájlok) automatikusan kitöltésre kerül.
Ez jó döntés. Természetesen nagyon nehéz beismerni, hogy nincs egér a számítógépen. De jobb a felhasználói felületet a megszokott módon és DnD implementációban fejleszteni.
DnD és belső adatok
A látogató érdekeinek figyelembe vétele mindig fontos, de a fejlesztő szempontjai is számítanak. A „húzással” nem csak szabványos eszközökkel, hanem az oldalelemeken lévő egéresemények kezelésével is megvalósítható.
Folyamatosan felmerül a címkekoordináta-értékek és méretük kiszámításának feladata. A kézi számítás jó gyakorlat, de az interaktív lehetőség kényelmesebb. Minden címke mindig téglalap alakú, és az elemek oldalain lévő egéresemények figyelésével megteremtheti annak lehetőségét, hogy az elemeket automatikusan a megfelelő helyre mozgassa az oldalon, vagy módosítsa azokat.
Az egérgomb kattintási eseményének kezelése - a kattintás helyének koordinátáinak emlékezése, például az elem egyik oldala. Mozgassa az egeret - az oldal a kívánt irányba mozog. Az egérgomb elengedése - az oldal megáll és a koordinátái megváltoznak. Így megváltoztathatja az elem helyzetét vagy méretét.
Formálisan nem drag and drop, de a hatás hasonló és praktikus. Bármely oldalelemhez univerzális kezelők készítésével jó interaktív eredményt érhet el, felgyorsíthatja a fejlesztést és egyszerűsítheti a kódot.
Vizuális és kézi programozás
Az egér a számítógépen és az ujjak az okostelefonon teljesen más megközelítések a felhasználói felület megvalósításához (látogató, fejlesztő). Ez teljesen természetes és modern követelmény a böngészők közötti kompatibilitáshoz.
Mindez együtt megnehezíti az oldalak létrehozását, de a drag and drop ötlet alkalmazása alapforma, eseményeinek felhasználásával, kombinálva ezt az ötletet az elemeken szokásos eseményekkel, megvalósíthat egy olyan mechanizmust, amelyben az oldal létrehozása vizuálisan megtörténik.
Most nézzük meg egy elem vagy elemek kiválasztását. Kijelölés ténye - helyi menü megjelenése, például a cél a kiválasztott igazítása (balra, jobbra, középre), vagy az elemek függőleges vagy vízszintes elosztása ugyanazzal a lépéssel, vagy méretük megváltoztatása (minimális, maximum).
A koordináták és méretek automatikus újraszámítása előnyösebb, mint a kézi. Kevesebb hiba – gyorsabban elérhető a cél. Ezenkívül egy böngészőben oldalt készíthet, elmentheti az elemek helyzetét és méretét. Ezt az oldalt okostelefonon megnyitva kijavíthatja a koordinátákat és méreteket, és megjegyezheti őket konkrét modell okostelefon vagy böngésző verziója.
Így ugyanazon az oldalon a böngészők közötti kompatibilitási követelménynek való kézi megfelelés nélkül különböző adatok jelennek meg különféle eszközökés különböző böngészőkben.
Ha lehetővé teszi a látogató számára, hogy ezeket az eljárásokat önállóan végezze el, valamint a fejlesztő által biztosítottak közül kiválasztja a szükséges oldalelemeket, akkor a felhasználó véleményének figyelembevételével biztosíthatja a böngészők közötti kompatibilitást és az oldal szükséges funkcionalitását. .
A Drag and Drop funkció segíthet az iPad teljesítményének növelésében. Így használhatja.
Így áthelyezhet egy fájlt az egyik felhőalapú tárolási szolgáltatásból a másikba, szöveget másolhat a Safariból egy szövegszerkesztő alkalmazásba, és árajánlatot adhat hozzá, vagy biztonsági mentés bizonyos fényképeket a fájltároló alkalmazásban.
Fényképek, fájlok és szövegek áthúzása
1. Érintse meg és tartsa lenyomva azt a fényképet, fájlt vagy kiemelt szöveget, amelyet át szeretne húzni egy másik alkalmazásba.
2. Húzza az elemet a kívánt helyre ez az alkalmazás vagy egy másik, amelyet a Slide Over vagy Split View módban nyitott meg, és engedje el.
Több fénykép vagy fájl áthúzása egyszerre
1. Érintse meg és tartsa lenyomva az egyik áthúzni kívánt fényképet vagy fájlt.
2. Az aktuális elem húzása közben koppintson egy másik fényképre vagy fájlra, amelyet szintén át szeretne húzni. Ismételje meg annyi elemmel, amennyit el szeretne helyezni.
3. Húzza az összes kijelölt objektumot a kijelölt helyre egy másik alkalmazásban, amelyet a Slide Over vagy Split View módban nyitott meg, és engedje el őket.
Szöveg áthúzása egyik alkalmazásból a másikba
1. Érintse meg és tartsa lenyomva a szöveg azon részét, amelyet húzni szeretne a kijelöléséhez.
2. A kijelölési pontokkal jelölje ki a húzni kívánt szöveg többi részét.
3. Nyomja meg és tartsa lenyomva a kiválasztott szöveget.
4. Húzza a szöveget az alkalmazásba, ahová el szeretné helyezni, és engedje el.
Hogyan változtassuk meg egyszerre több alkalmazás ikonjának helyzetét a "Drag and Drop" segítségével
Míg a legtöbb iOS drag and drop funkció csak az iPaden működik, ez a trükk valójában iPhone és iPad készüléken is működik. Ez lehetővé teszi az alkalmazások helyének rendszerezését a kezdőképernyőn a segítségével « Húzza és vidd", ahelyett, hogy egyenként mozgatná őket.
1. Érintse meg és tartsa lenyomva az áthelyezni kívánt alkalmazás ikonját a kezdőképernyőn.
2. Koppintson azokra a további alkalmazásokra, amelyeket szintén át szeretne helyezni.
3. Húzza ezeket az alkalmazásokat arra az oldalra vagy mappába, ahová szeretné őket helyezni, és dobja el őket.
182
Ebben a példában kiválasztunk egy div elemet, és meghívásával mozgathatóvá tesszük draggable() metódus. Ahogy az alábbi ábrán is látható, a megnyitott dokumentumban az elem a megszokott pozícióját veszi fel, de ezt követően az egérmutatóval a böngészőablakban tetszőleges helyre mozgatható:
A fogd és vidd funkció önmagában is hasznos, de még hasznosabb, ha a következő leírásban ismertetett Dropppable interakcióval együtt használjuk.
A húzható interakció kizárólag meghatározott HTML-jelölések és CSS-stílusok használatával valósul meg. Ez azt jelenti, hogy ez a funkció szinte minden böngészőben működik, de az ezzel felruházott elemek nem fognak tudni működni hasonló natív fogd és vidd lehetőségekkel. operációs rendszer.
A HTML5 specifikáció által meghatározott fogd és vidd műveleteket általában a natív operációs rendszer mechanizmusaival valósítják meg. Ha a jQuery UI fogd és vidd mechanizmust használja, a legjobb, ha letiltja a HTML5 megfelelőit az ütközések elkerülése érdekében. Ehhez állítsa false értékre a dokumentum törzselemének draggable attribútumot.
Húzható interakció testreszabása
Számos testreszabási lehetőség létezik a húzható interakcióhoz. A következő szakaszokban tárgyalt legfontosabb tulajdonságokat az alábbi táblázat foglalja össze:
Ingatlan | Leírás |
---|---|
tengely | A mozgást bizonyos irányokra korlátozza. Az alapértelmezett érték false, ami azt jelenti, hogy nincs korlátozás, de megadhatja az "x" értéket (csak az x tengely mentén mozog) vagy az "y" értéket (csak az y tengely mentén mozog) |
visszatartás | A lebegő elem helyét a képernyő egy meghatározott területére korlátozza. A támogatott értéktípusok leírása az alábbi táblázatban található a megfelelő példával együtt. Az alapértelmezett érték false, ez azt jelenti, hogy nincs korlátozás |
késleltetés | Meghatározza, hogy egy elemet mennyi ideig kell húzni, mielőtt elmozdulna. Az alapértelmezett érték 0, ami azt jelenti, hogy nincs késleltetés |
távolság | Meghatározza azt a távolságot, amelyet a felhasználónak el kell húznia egy elemet a kiindulási helyétől, mielőtt ténylegesen elmozdulna. Az alapértelmezett érték 1 pixel |
rács | Kényszeríti az áthelyezett elem kötődését a rácscellákhoz. Az alapértelmezett érték false, ami azt jelenti, hogy nincs kötés |
A mozgási irányok korlátozása
Számos módon korlátozhatja egy elem mozgását bizonyos irányokra. Ezek közül az első az tengely opció használata, amely lehetővé teszi a mozgás irányának az X vagy Y tengelyre történő korlátozását. Egy példa az alábbiakban látható:
...