Orang sentiasa suka menambah atribut tersuai pada teg HTML untuk menyimpan dan memanipulasi data. Tetapi masalah dengan melakukan ini ialah anda tidak tahu sama ada skrip lain akan menetapkan semula atribut tersuai anda pada masa hadapan Selain itu, jika anda melakukan ini, ia juga akan menyebabkan sintaks html tidak mematuhi spesifikasi Html, juga. seperti beberapa kesan sampingan yang lain. Itulah sebabnya atribut data tersuai telah ditambahkan pada spesifikasi HTML5 dan anda boleh melakukan banyak perkara berguna dengannya.
Anda boleh membaca spesifikasi terperinci HTML5, tetapi penggunaan atribut data tersuai ini adalah sangat mudah, iaitu, anda boleh menambah sebarang atribut bermula dengan "data-" pada teg HTML ini tidak dipaparkan, ia tidak akan menjejaskan reka letak dan gaya halaman anda, tetapi ia boleh dibaca dan ditulis.
Coretan kod berikut ialah penanda HTML5 yang sah:
data-myid="3e4ae6c4e">Sesetengah data yang hebat
Tetapi, bagaimana untuk membacanya Bagaimana untuk mendapatkan data ini? Anda sudah tentu boleh melelar melalui elemen halaman untuk membaca sifat yang anda mahukan, tetapi jQuery sudah mempunyai kaedah terbina dalam untuk memanipulasi sifat ini. Gunakan kaedah .data() jQuery untuk mengakses sifat "data-*" ini. Salah satu kaedah ialah .data(obj) Kaedah ini muncul selepas jQuery 1.4.3 Ia boleh mengembalikan atribut data yang sepadan.
Sebagai contoh, anda boleh membaca nilai atribut data-myid menggunakan kaedah penulisan berikut:
var myid= jQuery("#awesome").data('myid'); 🎜>
Anda juga boleh menggunakan sintaks json dalam atribut "data-*", contohnya, jika anda menulis html berikut:
Anda boleh mengakses data ini secara terus melalui js, anda boleh mendapatkan nilai yang sepadan:
<.>
Salin Kod
Anda juga boleh menetapkan nilai secara terus kepada atribut "data-*" melalui kaedah .data(key,value). Perkara penting yang perlu anda perhatikan ialah atribut "data-*" ini harus dikaitkan dengan elemen yang terdapat di dalamnya dan jangan gunakannya sebagai alat storan untuk menyimpan apa-apa.
Tambahan penterjemah: Walaupun "data-*" ialah atribut yang hanya muncul dalam HTML5, jquery adalah universal, jadi dalam halaman bukan HTML5 atau penyemak imbas, anda masih boleh menggunakan Kaedah .data(obj) untuk beroperasi pada "data-*" data.