我試圖創建HTML元素的手錶方法,使用__define[GS]etter__
當屬性更改停止。當我設置值時,它的反應很好,但如果屬性被監聽,是innerHTML,它會以某種方式呈現給定的字符串失敗。所以基本上,當我添加一些innerHTML它不顯示。__defineSetter__上的innerHTML從渲染
即時通訊使用這個前面的問題中所述的手錶方法: Watch for object properties changes in JavaScript
我可能導致的只是不聽innerHTML的變化,但我也想知道,如果__defineSetter__
某種程度上防止設置值的原處理。
謝謝!
即時通訊使用Chrome BTW。 但經過一些研究,我發現它使用defineProperty來代替,但它仍然不呈現innerHTML。這就好像它覆蓋了原生的setter方法。 – Tokimon 2010-05-27 10:24:05
該實現不適用於DOM節點。它只是在觀看屬性設置時調用回調。但它沒有實際設置*真實*基礎屬性值(即實際會改變內部html的屬性值)。 – 2010-05-27 11:08:58