Kesan Penggunaan "element.innerHTML = ..."
Amalan menambah kandungan menggunakan "element.innerHTML = ... " secara amnya tidak digalakkan dalam web pembangunan.
Akibat:
Setiap kali "innerHTML" diubah suai, HTML dihuraikan, DOM (Document Object Model) dibina dan elemen yang dikemas kini akan dimasukkan ke dalam dokumen. Proses ini boleh memakan masa, terutamanya apabila "innerHTML" mengandungi sejumlah besar elemen.
Sebagai contoh, jika "innerHTML" elemen mengandungi struktur kompleks seperti div, jadual dan imej, memanggil ".innerHTML = ..." memaksa penyemak imbas untuk menghuraikan semula semua elemen ini. Ini boleh mengganggu rujukan kepada elemen DOM sedia ada dan menyebabkan isu yang tidak dijangka.
Alternatif:
Daripada menggunakan "element.innerHTML = ...", ia lebih cekap untuk menggunakan kaedah "appendChild":
var newElement = document.createElement('div'); newElement.innerHTML = '<div>Hello World!</div>'; elm.appendChild(newElement);
Kaedah ini mencipta elemen baharu, memulakan "innerHTML" dan menambahkannya pada elemen sasaran. Dengan melakukan ini, kandungan sedia ada unsur sasaran dikekalkan tanpa perlu menghurai semula.
Nota Pengoptimuman:
Perlu dinyatakan bahawa penyemak imbas tertentu mungkin melaksanakan pengoptimuman untuk meminimumkan kesan penggunaan operator " =". Walau bagaimanapun, bergantung pada pengoptimuman penyemak imbas tidak disyorkan kerana ia mungkin berbeza-beza mengikut penyemak imbas dan versi penyemak imbas.
Atas ialah kandungan terperinci Mengapakah penggunaan 'element.innerHTML = ...' tidak digalakkan dalam pembangunan web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!