觀看頁面任何對象或屬性的變化:Watch.js
一個比較有意思的js庫可以為javascript的對象實現觀察者模式,以往我們使用javascript實現的觀察者模式都是通過使用回調函數配合 dom上的event事件來操作的,而“Watch.js”可以為javascript的對象實現觀察者模式,監聽對象的變化。
用麻雀雖小五臟俱全來描述Watch.js比較合適。“觀察者”模式是我們在開發的時候經常需要用到的。使用Watch.js那么我們就可以實現在“每當對象屬性改變的時候,執行你的函數”。雖然有很多其他的庫可以實現相同的功能,但是Watch.js卻可以不改變你平時書寫代碼的方式,并且實現屬性改變的監聽功能。
瀏覽兼容情況 :P
Works with: IE 9+, FF 4+, SF 5+, WebKit, CH 7+, OP 12+, BESEN, Node.JS , Rhino 1.7+
watch.js目前主要可以做如下這些事情:
1,監聽對象上一個或多個屬性的改變,當改變后觸發自定義事件。
2,批量觀察一個對象上所有的屬性,當有任何一個改變時,觸發自定義事件。
3,可以取消訂閱觀察
4,你可以在你需要的時候,不用改變對象上的屬性值,就可手動觸發觀察器。
5,可以與jquery兼容
使用:觀察一個對象屬性的變化
//defining our object however we like var ex1 = { attr1: "initial value of attr1", attr2: "initial value of attr2" }; //defining a 'watcher' for an attribute watch(ex1, "attr1", function(){ alert("attr1 changed!"); }); //when changing the attribute its watcher will be invoked ex1.attr1 = "other value";
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!