Rumah > hujung hadapan web > tutorial js > Adakah ID Elemen HTML Sifat Global dalam JavaScript?

Adakah ID Elemen HTML Sifat Global dalam JavaScript?

DDD
Lepaskan: 2024-12-25 02:14:08
asal
388 orang telah melayarinya

Are HTML Element IDs Global Properties in JavaScript?

Adakah Atribut ID DOM Tree Elements Menjadikan Mereka Sifat Global?

Terutama pelayar seperti Internet Explorer dan Chrome, elemen HTML dengan ID yang diberikan boleh diakses sebagai nama pembolehubah atau sifat objek tetingkap. Contohnya,

elemen dengan ID "contoh" boleh diambil menggunakan sama ada example.innerHTML atau window["example"].innerHTML.

Walau bagaimanapun, tingkah laku ini tidak dimaksudkan dan harus dianggap sebagai kemungkinan perangkap. Seperti yang dinyatakan dalam jawapan yang luas, penyemak imbas menambah elemen bernama sebagai sifat objek dokumen (dan dalam kes IE, objek tetingkap juga), yang merupakan keputusan reka bentuk yang buruk kerana ia membenarkan nama elemen bercanggah dengan sifat sedia ada bagi mereka. objek.

Untuk mengelakkan isu ini, amat disyorkan untuk menggunakan document.getElementById untuk mendapatkan semula elemen. Kaedah ini disokong secara meluas dan memberikan kejelasan dalam kod anda. Jika nama yang lebih panjang membimbangkan, anda boleh membuat fungsi pembungkus yang lebih pendek dan bukannya bergantung pada gelagat carian ID-ke-elemen yang tidak disengajakan.

Perlu ambil perhatian bahawa amalan menjadikan elemen bernama boleh diakses sebagai global pembolehubah seperti sedang diformalkan dalam HTML5, termasuk peletakan elemen tersebut pada kedua-dua sifat dokumen dan tetingkap. Walau bagaimanapun, walaupun terdapat penyeragaman, ia kekal sebagai amalan yang paling baik dielakkan memihak kepada kaedah yang lebih mantap dan jelas seperti document.getElementById.

Atas ialah kandungan terperinci Adakah ID Elemen HTML Sifat Global dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan