我正在尝试捕获任何 IMG 标签的“src”属性上的读/写操作。为此,我尝试在 HTMLImageElement 对象上使用 getOwnPropertyDescriptor 和 defineProperty 函数(因为我想避免为每个 img 定义它们)我看到的关于 getOwnPropertyDescriptor 的内容:
var proto = Object.getPrototypeOf(HTMLImageElement);
var own = Object.getOwnPropertyDescriptor(proto, "src");
// own is undefined in IE10/FF8/Chrome15
关于上面 proto 元素的 defineProperty,我看到 getter/setter 函数只在 Chrome 中运行,但不是在我期望的时候运行,而且 getter 函数中的“this”是 DOM 窗口的原型。我的测试代码可以在 http://jsfiddle.net/yoav/tUekJ/找到
getOwnPropertyDescriptor 在这种情况下应该工作吗?我是否应该期望在 JS 访问“src”属性时触发 getter/setter 函数?
谢谢!