Rumah >hujung hadapan web >tutorial js >Bagaimanakah Anda Boleh Mengesan Perubahan pada Sifat CSS dalam Halaman Web Menggunakan jQuery?
Pengesanan Acara untuk Perubahan Harta CSS dengan jQuery
Dalam bidang pembangunan web, pengesanan perubahan pada sifat CSS sesuatu elemen boleh penting untuk melaksanakan kemas kini dinamik. Dengan jQuery, anda boleh memanfaatkan kuasa acara DOM untuk memantau dan bertindak balas secara berkesan terhadap perubahan dalam sifat CSS seperti "paparan."
Menggunakan Acara DOMAttrModified
Moden penyemak imbas menyediakan sokongan untuk peristiwa mutasi DOM, yang termasuk acara DOMAttrModified. Acara ini direka bentuk khusus untuk memberitahu anda apabila atribut elemen diubah suai, termasuk sifat CSS yang ditakrifkan sebaris atau melalui helaian gaya luaran.
Untuk memanfaatkan acara DOMAttrModified, anda boleh menggunakan jQuery's on() fungsi, seperti yang ditunjukkan di bawah:
<code class="javascript">document.documentElement.addEventListener('DOMAttrModified', function(e){ if (e.attrName === 'style') { console.log('prevValue: ' + e.prevValue, 'newValue: ' + e.newValue); } }, false); document.documentElement.style.display = 'block';</code>
Dalam contoh ini, kami melampirkan pendengar acara pada elemen document.documentElement, yang mewakili punca dokumen itu. Apabila atribut gaya (seperti "paparan") diubah suai, pengendali acara ini dicetuskan, membolehkan anda mengakses nilai sebelumnya dan semasa atribut yang diubah suai.
Memanfaatkan Peristiwa "perubahan harta" IE
Untuk pelayar lama yang tidak menyokong DOMAttrModified, anda boleh menggunakan acara "propertychange" proprietari Internet Explorer sebagai sandaran. Walaupun acara ini disokong secara khusus oleh IE, ia boleh menyediakan kaedah yang boleh dipercayai untuk mengesan perubahan gaya dalam persekitaran tersebut.
Untuk menggunakan acara "propertychange", anda boleh menggunakan jQuery's on() fungsi dengan hujah rentetan, seperti yang dilihat dalam contoh berikut:
<code class="javascript">document.documentElement.on('propertychange', function(e){ if (e.propertyName === 'display') { console.log('prevValue: ' + e.prevValue, 'newValue: ' + e.newValue); } }, false); document.documentElement.style.display = 'block';</code>
Nota tentang Pemerhati Mutasi
Walaupun teknik yang disebutkan di atas adalah perkara biasa pendekatan untuk mengesan perubahan sifat CSS pada masa lalu, penyemak imbas baharu mengesyorkan menggunakan Pemerhati Mutasi, yang menyediakan mekanisme yang lebih piawai dan diperkemas untuk memantau elemen DOM tertentu untuk perubahan.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Mengesan Perubahan pada Sifat CSS dalam Halaman Web Menggunakan jQuery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!