怎样用Ifream怎样设置可以实现没有滚动条就可以看到全部的内容

ruanzheng_dotnet 2009-04-08 09:43:44
就是我设置有滚动条就可以看到全部的内容,但是有2个滚动条,不怎么好看,但是我如果不设置滚动条,就看不到全部的内容,所以现在请教各位大虾,可不可以帮帮忙?
...全文
205 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
itliyi 2009-04-11
  • 打赏
  • 举报
回复
框架根据页面大小自动调整
<iframe id="myframe" src="#" frameborder=0 width="100%" height="500px" scrolling=no onload="SetWinHeight(this)" style="border-bottom:0px; border=0px"></iframe>
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;
}
}
}
sxdinfo 2009-04-08
  • 打赏
  • 举报
回复
有两种方法:一是在包含iframe的页面中加入下面的代码,然后在iframe的onload事件中使用这个函数。不过,在实际使用中,如果iframe中的页面还包含iframe的话,就没有作用了,那就可以使用第二种方法。这种方法的好处是,只需要在iframe的页面中使用一次即可,减少工作量。
<script language="JavaScript">
//** iframe自动适应页面 **//

//输入你希望根据页面高度自动调整高度的iframe的名称的列表
//用逗号把每个iframe的ID分隔. 例如: ["myframe1", "myframe2"],可以只有一个窗体,则不用逗号。

//定义iframe的ID
var iframeids=["content"]

//如果用户的浏览器不支持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[i]);
if (dyniframe[i] && !window.opera)
{
dyniframe[i].style.display="block"
if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) //如果用户的浏览器是NetScape
dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight;
else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) //如果用户的浏览器是IE
dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
}
}
//根据设定的参数来处理不支持iframe的浏览器的显示问题
if ((document.all || document.getElementById) && iframehide=="no")
{
var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
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>

方法二:在页面中加入如下代码,就能保证iframe能完全显示页面了,但是缺点是必须每个页面都加上这段代码。
<script language="javascript" type="text/javascript">
function resize(){
resizePx(document.body.scrollHeight);
}
function resizePx(pxValue){
var pageHeight = pxValue>453?pxValue:453;
parent.document.getElementById('ifmain').style.height = pageHeight+"px";
}
window.onload=resize;
window.onresize = resize;
</script>

13,192

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 分析与设计
社区管理员
  • 分析与设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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