document
我在为我的 JavaScript覆盖对象时遇到了麻烦。
function myFunction(document) {
[code]
}
工作正常。但
function myFunction(newDocument) {
document=newDocument
[code]
}
才不是。到目前为止,我使用前一种方法的功能很好,但我宁愿只覆盖文档对象一次而忘记它。如果有人可以向我展示全局覆盖文档对象的正确方法,我将不胜感激。
document
我在为我的 JavaScript覆盖对象时遇到了麻烦。
function myFunction(document) {
[code]
}
工作正常。但
function myFunction(newDocument) {
document=newDocument
[code]
}
才不是。到目前为止,我使用前一种方法的功能很好,但我宁愿只覆盖文档对象一次而忘记它。如果有人可以向我展示全局覆盖文档对象的正确方法,我将不胜感激。
我要站出来说这不能做,也不应该做。
如果您替换当前document
对象(您script
正在运行的对象),那么您的脚本不会超出范围/上下文吗?
我做了一个小提琴(http://jsfiddle.net/V3Rsh/),表明这无法做到(至少在 Firefox 20 中)。document
如果您查看控制台,它会在分配前后报告相同的 URL 。但是,如果您调试并在第一个断点上放置一个断点console.log()
并在控制台中手动运行 document = newDocument() 行,您将看到document
创建的对象具有“about:blank”URL。但随后的调用并未console.log()
反映这一点。