我试图创建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