在 Firefox 中,parentNode 返回一个 window 对象,但在 Chrome 中返回一个 div 对象
以下是一些示例代码:
frames = document.getElementsByTagName('iframe');
parent = frames[0].parentNode;
parent.removeChild(frames[0]);
在 Chrome/Webkit 中作为用户脚本工作。 iframe 消失。 但是,在 Firefox 中,我会得到一个异常,即父级没有“removeChild”函数,并且该父级是 OBJ Window。
为什么?我该如何解决这个问题?
Here is some example code:
frames = document.getElementsByTagName('iframe');
parent = frames[0].parentNode;
parent.removeChild(frames[0]);
Works in Chrome/Webkit as a userscript. The iframe disappears.
However, in Firefox, I will get an exception that parent has no function "removeChild" and that parent is OBJ Window.
Why? How do I work around this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
frames
是全局变量吗?如果是这样,您将遇到window.frames
其中包含对页面上所有框架的引用。将变量重命名为其他名称,看看问题是否消失。
Is
frames
a global variable? If so you are running up againstwindow.frames
which contains references to all of the frames on the page.Rename the variable to something else and see if the problem goes away.