javascript iframe 权限
我在本地主机上有一个网页(父级), 一个 iframe 显示本地主机上的另一个 url(子地址;它是另一个 web 应用程序的一部分)。
在父页面中使用 javascript,我试图“查看”iframe.contentDocument。 (iframe 显示项目列表,如果列表为空,我只想完全隐藏 iframe。)
现在的问题是,当尝试检索元素 iframe.contentDocument.body 时, 我在 Firefox 中收到错误消息: 访问属性“body”的权限被拒绝
在 IE 中,我只是得到: 错误:“body”为空或不是对象。
有人知道如何解决这个问题吗?
谢谢,
I have a webpage (parent) on localhost,
with an iframe showing another url (child; which is part of a different webapp) on localhost.
Using javascript in parent-page, I am trying to "peek" into the iframe.contentDocument.
(The iframe is showing a list of items, and if the list is empty, I simply want to hide the iframe completely.)
Now, the problem is, when trying to retrieve the element iframe.contentDocument.body,
I get error-msg in firefox:
Permission denied to access property 'body'
In IE, I simply get:
Error: 'body' is null or not an object.
Anyone, knows how to get around this?
Thanks,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我已经看到了针对此错误的两种潜在解决方法,其中 body 返回 null。一种方法是简单地将脚本埋在主体的底部,这样它就不会在主体构建完成之前执行。但每个人都讨厌内联脚本,不是吗?
另一种方法是在此处中使用 onload 函数,这也确保了 body 在函数之前存在被称为。
两者似乎都工作得相当好。
I've seen two potential work-arounds for this error where body returns null. One is to simply bury your script at the bottom of the body, so that it doesn't execute before body has been built out. But everybody hates inline scripts, no?
Another, from here, is to use an onload function for your body, which also ensures that body exists before the function is called.
Both seem to work equivalently well.