Cara termudah adalah mengambil sesuatu dan meletakkannya, daripada menulis, apa yang harus diambil dan di mana meletakkannya. Tentu saja, tanpa mouse, atau perangkat serupa, Anda tidak dapat memilih apa pun dan tidak menunjukkan apa pun, tetapi bahkan dalam keadaan saat ini, penggunaan gagasan "seret dan lepas" sangat alami dan nyaman.
Bidang penerapan ide jauh dari hanya toko online, perpustakaan elektronik, mesin pencari atau Sistem Informasi, tetapi juga bidang yang diterapkan. Idenya sangat aplikatif dalam pengembangan situs dan elemennya, dibuat dan dipelihara secara interaktif, tanpa partisipasi seorang programmer.
Deskripsi ide
Pilih, pindahkan, dan tempatkan - idenya alami dan nyaman. Sungguh menakjubkan bahwa itu tidak lahir ketika mouse menjadi aksesori komputer yang sangat diperlukan.
Contoh paling nyata adalah memilih produk di toko online. Mengambil produk yang diinginkan dengan mouse dan menyeretnya ke keranjang belanja itu sederhana, alami, dan nyaman. Mengunggah file: Mengambil dokumen di luar jendela browser dan menempatkannya di elemen halaman, dengan demikian memulai transfer dokumen ke server, juga merupakan ide praktis.
Untuk pengembang, ide "seret dan lepas" adalah manipulasi elemen halaman tanpa menghitung ulang koordinat dan ukuran tag secara manual, kemampuan untuk memilih beberapa elemen dan menyelaraskannya, serta memindahkan sisi tag blok.
HTML dan CSS- bahasa yang bagus deskripsi tag dan gaya desainnya, tetapi ketika pengembang memiliki kemampuan untuk memanipulasi elemen halaman secara interaktif tanpa menghitung ulang koordinat dan ukuran secara manual, ini membuat pekerjaan lebih nyaman dan efisien.
Transfer file mudah
"Seret dan lepas": terjemahan dari bahasa Inggris ke bahasa Rusia secara harfiah terdengar "seret dan lepas". Dalam praktiknya, kedengarannya dan berfungsi lebih baik: pilih, transfer, dan lepaskan - sederhana dan alami.
Hal ini sangat sederhana untuk diterapkan pada halaman mentransfer file ke halaman, ke server atau untuk penggunaan lain.
Dalam contoh ini, beberapa file di desktop dipilih dengan mouse (gambar kiri). Pada pemilihan, tombol kiri mouse ditekan dan yang dipilih "pergi" ke keranjang. Browser itu sendiri menunjukkan bagaimana ini terjadi, menulis petunjuk "salin" dan membuat garis besar file yang akan dipindahkan.
Ketika mouse berada di atas keranjang, pengunjung melepaskan tombol kiri mouse, peristiwa drag-and-drop terjadi, dan pada halaman situs (gambar bawah) kode JavaScript dapat menerima dan memproses semua file yang pengunjung disediakan ke halaman (situs).
Deskripsi Implementasi
Kode yang melakukan prosedur ini sangat sederhana. Bahkan pengembang pemula dapat mengulanginya dalam kasus penggunaan apa pun.
Di sini antarmuka pengguna diwakili oleh dua tag: scPlaceFile (ini adalah keranjang itu sendiri, tempat Anda perlu meletakkan file) dan scPlaceFiles (ini adalah hasil pemrosesan file, dalam hal ini daftarnya).
Logika halamannya adalah sebagai berikut. Saat halaman dimuat di browser, event handler "ondrop" ditugaskan di keranjang - untuk menempatkan, sisa acara diblokir dan tidak digunakan.
Halaman berfungsi normal, tetapi segera setelah pengunjung memilih file dan menyeretnya ke gambar keranjang, yaitu, ke tag scPlaceFile, pemrosesan acara "file tiba" akan dimulai.
Handler ini hanya menampilkan daftar file. Nomornya ada di event.dataTransfer.files.length, dan informasi tentang setiap file ada di event.dataTransfer.files [i] .name. Apa yang harus dilakukan dengan data yang diterima ditentukan oleh pengembang, dalam hal ini, daftar file yang diterima hanya dibentuk.
Setelah diproses, acara diblokir dan tidak disebarkan. Ini diperlukan agar browser tidak bekerja sendiri dan tidak mengganggu pemrosesan informasi yang diterima.
DnD dan data eksternal
Mengunggah gambar ke server menggunakan drag and drop adalah praktik umum dalam teknologi ini. Biasanya, pengembang membuat formulir unggah file (1) yang berfungsi dengan cara biasa (2). Pengunjung bisa masuk mode normal pilih file dan unggah.
Namun, jika pengunjung ke tempat tertentu pada formulir melakukan "drag and drop", maka kolom nama file akan terisi secara otomatis.
Ini keputusan yang bagus... Tentu saja, sangat sulit untuk mengakui bahwa tidak ada mouse di komputer. Tetapi lebih baik untuk merancang antarmuka pengguna secara teratur dan dalam implementasi DnD.
DnD dan data internal
Menjaga kepentingan pengunjung selalu penting, tetapi kepentingan pengembang juga penting. Seret dan lepas dapat diimplementasikan tidak hanya dengan cara standar, tetapi juga dengan menangani peristiwa mouse pada elemen halaman.
Tugas menghitung nilai koordinat tag dan ukurannya muncul terus-menerus. Perhitungan manual adalah praktik yang baik, tetapi opsi interaktif lebih nyaman. Semua tag selalu berbentuk persegi panjang, dan dengan melacak aktivitas mouse di sisi elemen, Anda dapat membuat kemampuan untuk memindahkan elemen secara otomatis ke tempat yang tepat di halaman, atau mengubahnya.
Menangani acara mengklik tombol mouse - menyimpan koordinat tempat klik, misalnya, salah satu sisi elemen. Gerakkan mouse - sisi bergerak ke arah yang diinginkan. Melepaskan tombol mouse - sisi berhenti dan koordinatnya berubah. Dengan cara ini Anda dapat mengubah posisi elemen atau ukurannya.
Ini tidak secara formal "seret dan lepas", tetapi efeknya serupa dan praktis. Dengan membuat penangan universal untuk elemen halaman apa pun, Anda bisa mendapatkan hasil interaktif yang baik, mempercepat pengembangan, dan menyederhanakan kode Anda.
Pemrograman visual dan manual
Mouse di komputer dan jari di smartphone adalah pendekatan yang sama sekali berbeda untuk mengimplementasikan antarmuka pengguna (pengunjung, pengembang). Ini adalah persyaratan alami dan modern untuk kompatibilitas lintas-browser.
Semua ini bersama-sama membuat sulit untuk membuat halaman, tetapi menerapkan gagasan "seret dan lepas" di dalamnya bentuk standar menggunakan acaranya, menggabungkan ide ini dengan acara biasa pada elemen, Anda dapat menerapkan mekanisme di mana pembuatan halaman akan terjadi secara visual.
Sekarang mari kita lihat pemilihan item atau item. Fakta seleksi adalah tampilan menu konteks, misalnya, tujuannya adalah untuk menyelaraskan yang dipilih (kiri, kanan, tengah), atau mendistribusikan elemen secara vertikal atau horizontal dengan langkah yang sama, atau mengubah ukurannya (minimum, maksimum) .
Perhitungan ulang koordinat dan dimensi secara otomatis lebih disukai daripada perhitungan ulang manual. Lebih sedikit kesalahan - tujuannya tercapai lebih cepat. Selain itu, Anda dapat membuat halaman dalam satu browser, menyimpan posisi dan ukuran elemen. Setelah membuka halaman ini di ponsel cerdas, Anda dapat mengoreksi nilai koordinat dan dimensi dan mengingatnya untuk model tertentu versi smartphone atau browser.
Jadi halaman yang sama tanpa kepatuhan manual dengan persyaratan lintas-browser akan memiliki data yang berbeda untuk ditampilkan perangkat yang berbeda dan di berbagai browser.
Jika Anda mengizinkan pengunjung untuk melakukan prosedur ini sendiri, serta memilih elemen halaman yang diperlukan dari antara yang disediakan oleh pengembang, Anda dapat memastikan kompatibilitas lintas-browser dan fungsionalitas halaman yang diperlukan, dengan mempertimbangkan pendapat pengguna .
Drag and Drop dapat membantu meningkatkan kinerja iPad Anda. Inilah cara Anda dapat menggunakannya.
Jadi Anda dapat memindahkan file dari satu layanan penyimpanan cloud ke yang lain, menyalin teks dari Safari ke aplikasi pengeditan teks untuk menambahkan kutipan atau membuat cadangan foto tertentu dalam aplikasi penyimpanan file.
Cara menarik dan melepas foto, file, dan teks
1. Sentuh dan tahan foto, file, atau teks yang disorot yang ingin Anda seret ke aplikasi lain.
2. Seret item ke lokasi yang diinginkan di lampiran ini atau yang lain yang Anda buka dalam mode "Slide Over" atau "Split View" dan lepaskan.
Cara menarik dan melepas banyak foto atau file secara bersamaan
1. Sentuh dan tahan salah satu foto atau file yang ingin Anda seret.
2. Saat menyeret item saat ini, ketuk foto atau file lain yang juga ingin Anda seret. Lakukan lagi dengan item sebanyak yang Anda ingin pindahkan.
3. Seret semua objek yang dipilih ke lokasi yang ditentukan di aplikasi lain yang Anda buka di Slide Over atau Split View dan lepaskan.
Cara menyeret teks dari satu aplikasi ke aplikasi lain
1. Sentuh dan tahan bagian teks yang ingin Anda seret untuk memilihnya.
2. Gunakan titik pilihan untuk memilih sisa teks yang ingin Anda seret.
3. Tekan dan tahan teks yang disorot.
4. Seret teks ke dalam aplikasi tempat Anda ingin meletakkannya dan lepaskan.
Cara mengubah susunan ikon beberapa aplikasi sekaligus menggunakan "Drag and Drop"
Sementara sebagian besar fungsionalitas drag-and-drop di iOS hanya berfungsi di iPad, trik ini benar-benar berfungsi di iPhone dan iPad. Ini memungkinkan Anda untuk mengatur pengaturan aplikasi di layar beranda menggunakan « Seret dan Jatuhkan ”daripada memindahkannya satu per satu.
1. Tekan dan tahan ikon aplikasi yang ingin Anda ubah posisinya di layar beranda.
2. Ketuk aplikasi tambahan yang ingin Anda pindahkan juga.
3. Seret aplikasi ini ke halaman atau folder yang Anda inginkan dan lepaskan.
182
Dalam contoh ini, kami memilih elemen div dan membuatnya mengapung dengan memanggil metode yang dapat diseret ()... Seperti yang ditunjukkan pada gambar di bawah, dalam dokumen yang dibuka, elemen mengambil posisi normal, tetapi setelah itu dapat dipindahkan dengan penunjuk mouse ke tempat mana pun di jendela browser:
Fitur drag-and-drop berguna sendiri, tetapi bahkan lebih berguna bila digunakan bersama dengan interaksi Droppable, yang dijelaskan di bawah ini.
Interaksi Draggable diimplementasikan hanya melalui penggunaan markup HTML dan gaya CSS tertentu. Ini berarti bahwa fungsi ini akan berfungsi di hampir semua browser, tetapi elemen yang diberkahinya tidak akan dapat bekerja dengan alat seret dan lepas asli yang serupa. sistem operasi.
Operasi drag-and-drop yang ditentukan oleh spesifikasi HTML5 biasanya diimplementasikan menggunakan mekanisme asli sistem operasi. Jika Anda menggunakan mekanisme Drag-and-drop jQuery UI, yang terbaik adalah mematikan HTML5 yang setara untuk menghindari konflik. Untuk tujuan ini, atur atribut yang dapat diseret dari elemen badan dokumen ke false.
Mengonfigurasi Interaksi yang Dapat Diseret
Ada banyak opsi penyesuaian untuk interaksi Draggable. Properti yang paling penting, yang dibahas dalam bagian berikut, diringkas dalam tabel di bawah ini:
Properti | Keterangan |
---|---|
sumbu | Membatasi gerakan ke arah tertentu. Defaultnya adalah false, yang berarti tidak ada batasan, tetapi Anda juga dapat menentukan nilai "x" (bergerak sepanjang sumbu X saja) atau "y" (bergerak sepanjang sumbu Y saja) |
penahanan | Membatasi posisi elemen melayang ke area layar tertentu. Jenis nilai yang didukung dijelaskan dalam tabel di bawah ini, menggunakan contoh yang sesuai. Standarnya salah, yang berarti tidak ada batasan |
menunda | Menentukan berapa lama elemen harus diseret sebelum bergerak. Standarnya adalah 0, yang berarti tidak ada penundaan |
jarak | Menentukan jarak pengguna harus menyeret elemen dari posisi awal sebelum benar-benar bergerak. Standarnya adalah 1 piksel |
kisi-kisi | Memaksa gertakan elemen yang dipindahkan ke sel kisi. Defaultnya salah, yang berarti tidak ada ikatan |
Membatasi arah gerakan
Ada beberapa cara di mana Anda dapat membatasi pergerakan elemen ke arah tertentu. Yang pertama adalah menggunakan opsi sumbu untuk membatasi arah gerakan ke sumbu X atau Y. Contoh ditunjukkan di bawah ini:
...