Pemantauan Objek Merentas Pelayar dengan Object.watch()
Pemantauan objek adalah penting untuk mengesan perubahan dalam aplikasi dinamik. Walaupun Object.watch() menawarkan penyelesaian yang berkesan dalam pelayar Mozilla, ia tetap tidak disokong dalam Internet Explorer. Untuk menangani isu saling kendali ini, pembangun telah mencari alternatif.
Satu penyelesaian yang menjanjikan ialah pemalam jQuery yang meniru fungsi Object.watch(). Walau bagaimanapun, pelaksanaannya mungkin menimbulkan cabaran. Untuk pendekatan merentas pelayar yang lebih dipercayai, coretan kod berikut, yang diilhamkan oleh kerja Webreflection, boleh digunakan:
var options = {'status': 'no status'}, watcher = createWatcher(options); watcher.watch("status", function(prop, oldValue, newValue) { console.log("old: " + oldValue + ", new: " + newValue); return newValue; }); watcher.status = 'asdf'; watcher.status = '1234'; console.log(watcher.status);
Dalam contoh ini, sifat status objek yang dipantau diperhatikan. Setiap kali ia mengalami perubahan, fungsi panggil balik yang berkaitan akan digunakan, mengeluarkan butiran mutasi sifat.
Perhatikan bahawa fungsi createWatcher(), yang bertanggungjawab untuk menyediakan mekanisme pemantauan, tidak disertakan dalam coretan ini. Pelaksanaannya, bersama-sama dengan arahan yang lebih terperinci, boleh didapati dalam URL rujukan yang disediakan.
Dengan memanfaatkan shim ini, pembangun boleh memantau perubahan objek secara konsisten merentas pelbagai pelayar web moden, memastikan konsistensi dalam aplikasinya tingkah laku.
Atas ialah kandungan terperinci Bagaimana untuk Mencapai Pemantauan Objek Cross-Browser Tanpa Object.watch()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!