那是我的代码.基本上,我有一个iFrame,其源可能会改变.我需要包含DIV来垂直扩展以容纳iFrame内的任何内容.
我无法让它发挥作用.有任何想法吗?
我的代码
<!DOCTYPE html>
<html>
<head>
<title>Ruby on Rails: Welcome aboard</title>
</head>
<body>
<div id="page">
<div id="content">
<div id='commentLoader' style="width: 500px;">
<iframe id="commentIframe" src="http://www.amazon.com" style="border-style: none; width: 100%; height: 100%"></iframe>
</div>
</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
Tom*_*mas 12
......正如paislee的评论所指出的那样,Mozilla(以及所有其他主流浏览器)都有一个名为"同源策略"的东西,它指出:
相同的源策略可防止从一个源加载的文档或脚本从另一个源获取或设置文档的属性.
从本质上讲,Mozilla确保您无法通过JavaScript访问其他网页的属性,因为这会带来安全隐患(对于cookie劫持等我认为).
例如,在讨论同一来源页面的iframe时,这是一个类似的问题 ; 这是适用于您的问题的答案.正如您在Firefox的错误控制台中看到的那样,您的"权限被拒绝访问属性文档"...
好的,所以你现在有几个选项,你知道你无法通过JavaScript访问iframe的高度(因为它托管在另一个域上):
假设1不可能,您必须使用您的服务器访问该网页.这里的第一个选项是屏幕抓取iFrame的内容,然后显示它
我假设在iframe中加载的是一组注释(ID类型给了它),我也可以自由地假设每个注释都有一个固定的高度或最大高度.在这种情况下,您可以编写一个加载页面的PHP脚本,计算注释量(正则表达式),然后将注释高度的数字相乘,以确定iframe的适当高度
祝好运,
| 归档时间: |
|
| 查看次数: |
6144 次 |
| 最近记录: |