我有一个javascript函数,它实际上使用window.open()方法在iframe中加载页面。但是我确定通过另一个脚本window.open被覆盖了。这就是为什么我收到错误
Uncaught TypeError: window.open is not a function
有没有办法找出哪个脚本实际上没有找到所有脚本。因为页面有很多脚本。
答案 0 :(得分:0)
您可以通过执行
将window.open
设置为不可配置且不可写
Object.defineProperty( window, "open",
{ writable: false,
configurable: false
}
);
在加载或执行其他脚本之前。
Chrome会报告尝试将window.open
设置为true
为
Uncaught TypeError: Cannot assign to read only property 'open' of object '#<Window>'
以及尝试的详细信息。 Firefox的行为与
的错误消息类似
TypeError: "open" is read-only
<小时/> 请注意,MDN description of modifying existing properties,在2018年6月1日声明,尝试写入不可写属性“也不会抛出错误”。这似乎不正确,与代码示例注释不匹配。