Object.defineProperty: setters for dom elements properties
问题 I can't fully understand how Object.defineProperty works on dom elements. On normal javascript objects it works like a charm var obj={name: 'john'}; Object.defineProperty(obj, 'name', { get: function(){ console.log('get value') }, set:function(newValue){ console.log('set value '+newValue); }, configurable: true }); the line obj.name='Tom'; will print to console 'set value Tom' and change obj.name to Tom. When I try it on a dom element (e.g. on the property checked of a checkbox), it will