如何让Iframe所在的页面自适应iframe的高度问题。

zc_0101 2008-12-24 11:32:13
具体情况是这样的,我在一个a.html页面嵌入了一个iframe,
其src指向一个动态搜索,如:http://www.baidu.com/s?wd=a
网上找了好多代码和资料,大多都是在iframe的src页面(静态)
中加入一些js代码来控制,但我这是动态的,不适用,我想实现的效果是:
iframe没有滚动条,而让整个页面随着iframe的src内容的高度变化而变化,
不知道我有没有说清楚,各位大虾给支个招,谢谢!
...全文
542 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
skyblackhole 2008-12-29
  • 打赏
  • 举报
回复
onload="this.style.height=treeinfo.document.body.scrollHeight"即可,跨网站就得另外设置了.
不悲不喜 2008-12-29
  • 打赏
  • 举报
回复
UP
Maojm 2008-12-26
  • 打赏
  • 举报
回复
mark
学习
  • 打赏
  • 举报
回复
楼上的正解,跨域的话不用代理几乎是不大可能实现的
lsc1202001 2008-12-26
  • 打赏
  • 举报
回复
如果是JSP 可以这样写

<%
java.net.URL url = new java.net.URL("http://www.baidu.com/xxxx");
java.net.HttpURLConnection connection = (java.net.HttpURLConnection) url.openConnection();
connection.connect();
urlStream = connection.getInputStream();
java.io.BufferedReader reader = new java.io.BufferedReader(new java.io.InputStreamReader(urlStream));
while ((line = reader.readLine()) != null)
{%>
<%=line%>
<%}%>


这样你框架里的页面就是baidu的页面了 再结合3楼的方法
anjing5566 2008-12-24
  • 打赏
  • 举报
回复
自适应是在a.html加js就可以了
具体(以前用过,没有测试):

function SetWinHeight(obj)
{
var win=obj;
if (document.getElementById)
{
if (win && !window.opera)
{
if (win.contentDocument && win.contentDocument.body.offsetHeight)

win.height = win.contentDocument.body.offsetHeight;
else if(win.Document && win.Document.body.scrollHeight)
win.height = win.Document.body.scrollHeight;
}
}
}

//使用调用
//<iframe width="778" align="center" height="200" id="win" name="win" onload="Javascript:SetWinHeight(this)" frameborder="0" scrolling="no"></iframe>



解决跨域可以用本地文件直接获取远程文件的源码,模拟成本地的,如:

http://www.fangleo.cn/get/phpGet.php?url=http://www.sohu.com

zc_0101 2008-12-24
  • 打赏
  • 举报
回复
啊?
lsc1202001 2008-12-24
  • 打赏
  • 举报
回复
你iframe连接到远程的页面 跨域了无法获得页面高度的
Robin.Xun 2008-12-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 anjing5566 的回复:]
自适应是在a.html加js就可以了
具体(以前用过,没有测试):
JScript codefunctionSetWinHeight(obj)
{varwin=obj;if(document.getElementById)
{if(win&&!window.opera)
{if(win.contentDocument&&win.contentDocument.body.offsetHeight)

win.height=win.contentDocument.body.offsetHeight;elseif(win.Document&&win.Document.body.scrollHeight)
win.height=win.Document.…
[/Quote]
正解
西安风影 2008-12-24
  • 打赏
  • 举报
回复
<iframe id="treeinfo" name="treeinfo" src="treeinfo.html" width="100%" height="100%" marginwidth="0" marginheight="0" frameborder="0" onload="this.style.height=treeinfo.document.body.scrollHeight+5" scrolling="no">
</iframe>

Try It

87,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧