Cross-Browser Object.watch() Polyfill
Memantau perubahan dalam objek adalah penting untuk aplikasi JavaScript. Walaupun Object.watch() menyediakan fungsi ini dalam pelayar Mozilla, ia tidak mempunyai sokongan dalam pelayar lain. Soalan ini meneroka alternatif kepada Object.watch() untuk pemantauan objek merentas pelayar.
Satu penyelesaian yang dicadangkan ialah pemalam jQuery yang disebut dalam soalan. Walau bagaimanapun, untuk keserasian penyemak imbas yang lebih luas, polyfill tersuai disyorkan.
Polyfill merentas penyemak imbas Object.watch() tersedia di http://webreflection.blogspot.com/2009/01/internet-explorer -object-watch.html. Polyfill ini telah diuji secara meluas dan berfungsi dalam IE8, Safari, Chrome, Firefox dan Opera.
Untuk menggunakan polyfill, mula-mula buat pemerhati untuk objek yang anda ingin pantau, seperti ditunjukkan dalam contoh di bawah:
<code class="javascript">var options = {'status': 'no status'}, watcher = createWatcher(options);</code>
Kemudian, tonton sifat yang diingini dan sediakan fungsi panggil balik untuk mengendalikan perubahan sifat:
<code class="javascript">watcher.watch("status", function(prop, oldValue, newValue) { document.write("old: " + oldValue + ", new: " + newValue + "<br>"); return newValue; });</code>
Akhir sekali, tetapkan nilai pada sifat yang diperhatikan untuk mencetuskan panggilan balik:
<code class="javascript">watcher.status = 'asdf'; watcher.status = '1234';</code>
Polifill ini secara berkesan meniru fungsi Object.watch(), membenarkan pembangun memantau perubahan objek dalam mana-mana pelayar web.
Atas ialah kandungan terperinci Cara Melaksanakan Pemantauan Objek Merentas Pelayar: Polyfill untuk `Object.watch()`. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!