我想以这样的方式连接到 document.createElement 函数,每次创建 div 元素时,我的钩子都会将“foo”属性附加到 div。这是我目前拥有的:
<script>
window.onload = function () {
console.log("document loaded");
document.prototype.createElement = function (input) {
var div = document.createElement(input);
console.log("createElement hook attached!");
if (input == "div")div.foo = "bar";
return div;
}
document.body.addEventListener('onready', function () {
var div = document.createElement("div");
console.log(div.foo);
});
}
</script>
当我在 Chrome 中运行它时,我收到一条错误消息
Uncaught TypeError: Cannot set property 'createElement' of undefined test.html:4 window.onload
(我更改了上面错误消息中的行号以匹配我的代码)
我在这里错了什么?我怎样才能解决这个问题?