Nejjednodušší je přijmout a dát něco, než psát, co si vzít a kam dát. Samozřejmě, bez myši nebo zařízení, jako je tento, nevybíráte nic a neříkejte nic, ale i v současném stavu věcí je použití myšlenky drag and drop velmi přirozené a pohodlné.
Popis nápadu
HTML a CSS jsou vynikající jazyky pro popis štítků a stylů jejich designu, ale když je vývojář schopen interaktivně manipulovat prvky stránky bez manuálníhopřevedením souřadnic a velikostí to činí práci pohodlnější a efektivnější.
Snadný přenos souborů
Pokud je myš skončila koše, ať návštěvník levé tlačítko myši, akce „tah a hodit“ se stalo na místě (spodní obrázek) Javascript kódu schopné přijímat a zpracovávat všechny soubory, které poskytuje návštěvníka stránky (místo).
Popis implementace
Tento psovod jednoduše vytiskne seznam souborů. Jejich číslo se nachází v souboru event.dataTransfer.files.length a informace o každém souboru event.dataTransfer.files [i] .name. Co dělat s přijatými daty, určuje vývojáře, v tomto případě jednoduše vytvoří seznam přijatých souborů. Po zpracování je událost zablokována a neplatí. Je nutné, aby se prohlížeč nezaměstnával a nezasahoval do procesu zpracování získaných informací.
DnD a externí data
, který funguje normálně
. Návštěvník může obvykle vybrat soubory a stáhnout je.
Pokud však návštěvník na určité místo formy dělat «drag and drop», pak soubor (y) Název pole se vyplní automaticky.
Toto je dobré rozhodnutí. Je samozřejmě velmi těžké přiznat, že na počítači není žádná myš. Ale je lepší rozvíjet uživatelské rozhraní obvyklým způsobem a implementací DnD.
Starostlivost o zájmy návštěvníků je vždy důležitá, ale problémy developera také záleží. Je možné implementovat "drag and drop" nejen standardními prostředky, ale také zpracováním událostí myši na prvky stránky. Úloha výpočtu hodnot souřadnic značek a jejich velikostí vzniká neustále. Manuální výpočet je dobrá praxe, ale interaktivní verze je výhodnější. Všechny štítky vždyjsou obdélníkového tvaru a sledování „myši“ události po stranách prvků, můžete vytvořit automatické přesouvat položky do kterého chcete stránku nebo změnit.
Zpracování události tlačítka myši je umístění kliknutí umístění, například jednoho z prvků prvku. Pohyb myši - strana se pohybuje správným směrem. Uvolněte tlačítko myši - boční zastávky a změní se souřadnice. Ano, můžete měnit pozici prvku nebo jeho velikost. Formálně to není "drag and drop", ale efekt je podobný a praktický. Vytvořením univerzálních ovladačů pro libovolnou položku na stránce můžete získat dobrý interaktivní výsledek, urychlit vývoj a zjednodušit kód.
Myš na počítači a prsty na smartphonu - zcela odlišné přístupy k implementaci uživatelského rozhraní (návštěvník, vývojář). Existuje zcela přirozený a moderní požadavek na crossbrowser.
To vše dohromady znesnadňuje vytvoření stránek, ale představa, že pomocí «drag and drop» ve standardní podobě, s využitím svého událost kombinující tuto myšlenku se pravidelných akcí v buňce, můžete realizovat mechanismus, podle kterého chcete vytvořit stránku bude vizuální. Nyní se podíváme na výběr prvku nebo prvků. Fakt výběr - kontextové menu, například cíl - vyhrazené zarovnání (vlevo, vpravo, uprostřed), nebo rozložení prvků svisle nebo vodorovně se stejným krokem, nebo změnit jejich velikost (na minimum,maximální). Automatická přepočet souřadnic a velikostí převážně ručně. Méně chyb - cíl je rychlejší. Kromě toho můžete vytvořit stránku v jednom prohlížeči, uložit pozici a velikost prvků. Otevřením této stránky na smartphonu můžete upravit hodnotu souřadnic a velikostí a pamatovat je na konkrétní model smartphonu nebo verze prohlížeče. Takže jedna stránka bez manuální kompatibility bude mít různé údaje pro zobrazení na různých zařízeních a v různých prohlížečích.
Pokud povolíte návštěvníkovi, aby provedl tyto postupy sám o sobě a také aby vybral potřebné prvky stránky z čísla poskytnutého vývojářem, může křížové procházení poskytnout potřebné funkce stránky s přihlédnutím k názoru uživatele.
Pokud však návštěvník na určité místo formy dělat «drag and drop», pak soubor (y) Název pole se vyplní automaticky.