做网站不只是铺门面,适合自己品牌理念的网站建设才能促进营销!
广州网站制作、广州网站建设、广州做网站,首选广州凯旋网络公司!
当前位置:首页 >> 新闻资讯 >> 网页编程知识 >> 如何让Iframe自适应高度

如何让Iframe自适应高度

Tags: Iframe自适应高度   

方法一:
不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是 iframe的大小却不像层那样可以“伸缩自如”,所以带来了使用上的麻烦,给iframe设置高度的时候多了也不好,少了更是不行,现在,让我来告诉大 家一种iframe动态调整高度的方法,主要是以下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,不能丢掉onload属性,当然了,id也必须也函数中的win匹配
程序代码
<iframe width="778" align="center" height="200" id="win" name="win" onload="Javascript:SetWinHeight(this)" frameborder="0" scrolling="no"></iframe>
方法二:
另一种情况的iframe解决方案(超简单)
重要提示:src=中你必须填写的网页地址,一定要和本页面在同一个站点上,否则,会抱错,说“拒绝访问!”(实际上这是因为Js的跨域问题导致拒绝访问的)
之前自己也碰到过这个问题,为了得到答案去网上搜索,发现有不少人也遇到了这样的问题,现在就把解决方法共享一下
1、建立一个bottom.js的文件,然后输入下面的代码(只有两行哦)
parent.document.all("框架ID名").style.height=document.body.scrollHeight;
parent.document.all("框架ID名").style.width=document.body.scrollWidth;
这里的 框架ID名 就是Iframe的ID,比如:
<IFRAME id="框架ID名" name="left" frameBorder=0 scrolling=no src="XXX.asp" width="100%"></IFRAME>
2、给你网站里所有的被包含文件里面每个都加入
<script language = "JavaScript" src = "bottom.js"/></script>
3、OK,收工!
在WINXP、IE6下面测试通过。很简单吧!
实现 iframe 的自适应高度
实现 iframe 的自适应高度,能够随着页面的长度自动的适应以免除页面和 iframe 同时出现滚动条的现象。
程序代码
<script type="text/javascript">
//** iframe自动适应页面 **//
//输入你希望根据页面高度自动调整高度的iframe的名称的列表
//用逗号把每个iframe的ID分隔. 例如: ["myframe1", "myframe2"],可以只有一个窗体,则不用逗号。
//定义iframe的ID
var iframeids=["test"]
//如果用户的浏览器不支持iframe是否将iframe隐藏 yes 表示隐藏,no表示不隐藏
var iframehide="yes"
function dyniframesize()
{
var dyniframe=new Array()
for (i=0; i<iframeids.length; i++)
{
if (document.getElementById)
{
//自动调整iframe高度
dyniframe[dyniframe.length] = document.getElementById(iframeids);
if (dyniframe && !window.opera)
{
dyniframe.style.display="block"
if (dyniframe.contentDocument && dyniframe.contentDocument.body.offsetHeight) //如果用户的浏览器是NetScape
dyniframe.height = dyniframe.contentDocument.body.offsetHeight;
else if (dyniframe.Document && dyniframe.Document.body.scrollHeight) //如果用户的浏览器是IE
dyniframe.height = dyniframe.Document.body.scrollHeight;
}
}
//根据设定的参数来处理不支持iframe的浏览器的显示问题
if ((document.all  document.getElementById) && iframehide=="no")
{
var tempobj=document.all? document.all[iframeids] : document.getElementById(iframeids)
tempobj.style.display="block"
}
}
}
if (window.addEventListener)
window.addEventListener("load", dyniframesize, false)
else if (window.attachEvent)
window.attachEvent("onload", dyniframesize)
else
window.onload=dyniframesize
</script>

【2009-05-30】   【浏览445次】
上一篇:ASP生成html的新方法
下一篇:影响SEO的页面制作细节
本类最新
网站制作时关于管理员账号删除的设计[11.18]
购物网站常用功能之Session显示最近浏览的代码[11.15]
只能输入数字的JS验证函数[11.15]
ASP实现网页参数的判断[11.15]
最简洁的ASP多条件查询语法[11.14]
 
本类热门
document.getElementById详解[09.02]
制作网页的5条非常不错的建议[09.16]
动态更换CSS的JS代码[08.19]
目前非常全面的CSS兼容问题资料汇集[08.31]
网页设计:DIV+CSS:如何编写代码才能更有效率[11.22]
广州做网站的公司性质客户可免预付款,广州凯旋网络工作室做广州最好的网站制作公司,做广州最有实力的网站建设公司。
广州网络公司-凯旋网络工作室唯一官方网址:Www.CreatSoon.Com
本站设计版权归凯旋网络所有,未经允许不得复制或设立镜像。

凯旋网络2011年最新精品网站制作案例:地下金属探测仪器 地下金属探测器 地下金属探测仪 掘金1号地下金属探测器 
粤ICP备05124435号 网站地图  免责声明