最近做了一个包含多个iframe的页面,在每个Tab标签中放入一个frame,点击不同的标签时才会显示相应的iframe。
页面效果类似于这个样子:http://www.sharejs.com/code/windows/tab/index.html
现在的问题是:
每个iframe中的内容高度是不一样的。需要点击到不同的tab标签页时,相应的iframe能显示、且高度自适应。
目前,采用网上说的各种方法:
onload方法、javascript方法等,都只能实现第一个iframe页面的高度自适应,无法实现所有iframe高度自适应。在网上查了很多资料。 都无法解决。请高手帮忙。
非常感谢!
body中的代码如下:
<body><div align="center">
<div id="gallery">
<div class="on" title="Constable"><span>通知、留言</span></div>
<div class="off" title="JobAccept"><span>待接受的任务</span></div>
<div class="off" title="JobIng"><span>进行中的任务</span></div>
<div class="off" title="JobDelayed"><span>超期的任务</span></div>
<div class="off" title="JobDone"><span>待打分的任务</span></div>
<div class="off" title="JobScore"><span>已完成的任务</span></div>
</div><div id="Constable" class="show" align="left">
<iframe id=src1 name=src11 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div><div id="JobAccept" class="hide" align="left">
<iframe id=src2 name=src21 width=100% frameborder=0 src="JobView.jsp?kind=等待接受" ></iframe>
</div><div id="JobIng" class="hide" align="left">
<iframe id=src3 name=src31 width=100% frameborder=0 src="JobView.jsp?kind=期间" ></iframe>
</div><div id="JobDelayed" class="hide" align="left">
<iframe id=src4 name=src41 width=100% frameborder=0 src="JobAdd.jsp" ></iframe>
</div><div id="JobDone" class="hide" align="left">
<iframe id=src5 name=src51 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div><div id="JobScore" class="hide" align="left">
<iframe id=src6 name=src61 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div></div></body>
用于控制iframe显示、隐藏的js代码如下:
onload = function()
{
var e, i = 0;
while (e = document.getElementById('gallery').getElementsByTagName ('DIV') [i++])
{
if (e.className == 'on' || e.className == 'off')
{
e.onclick = function ()
{
var getEls = document.getElementsByTagName('DIV');
for (var z=0; z<getEls.length; z++)
{
getEls[z].className=getEls[z].className.replace('show', 'hide');
getEls[z].className=getEls[z].className.replace('on', 'off');
}
this.className = 'on';
var max = this.getAttribute('title');
document.getElementById(max).className = "show";
}
}
}
}
页面效果类似于这个样子:http://www.sharejs.com/code/windows/tab/index.html
现在的问题是:
每个iframe中的内容高度是不一样的。需要点击到不同的tab标签页时,相应的iframe能显示、且高度自适应。
目前,采用网上说的各种方法:
onload方法、javascript方法等,都只能实现第一个iframe页面的高度自适应,无法实现所有iframe高度自适应。在网上查了很多资料。 都无法解决。请高手帮忙。
非常感谢!
body中的代码如下:
<body><div align="center">
<div id="gallery">
<div class="on" title="Constable"><span>通知、留言</span></div>
<div class="off" title="JobAccept"><span>待接受的任务</span></div>
<div class="off" title="JobIng"><span>进行中的任务</span></div>
<div class="off" title="JobDelayed"><span>超期的任务</span></div>
<div class="off" title="JobDone"><span>待打分的任务</span></div>
<div class="off" title="JobScore"><span>已完成的任务</span></div>
</div><div id="Constable" class="show" align="left">
<iframe id=src1 name=src11 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div><div id="JobAccept" class="hide" align="left">
<iframe id=src2 name=src21 width=100% frameborder=0 src="JobView.jsp?kind=等待接受" ></iframe>
</div><div id="JobIng" class="hide" align="left">
<iframe id=src3 name=src31 width=100% frameborder=0 src="JobView.jsp?kind=期间" ></iframe>
</div><div id="JobDelayed" class="hide" align="left">
<iframe id=src4 name=src41 width=100% frameborder=0 src="JobAdd.jsp" ></iframe>
</div><div id="JobDone" class="hide" align="left">
<iframe id=src5 name=src51 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div><div id="JobScore" class="hide" align="left">
<iframe id=src6 name=src61 width=100% frameborder=0 src="JobView.jsp?kind=已结束" ></iframe>
</div></div></body>
用于控制iframe显示、隐藏的js代码如下:
onload = function()
{
var e, i = 0;
while (e = document.getElementById('gallery').getElementsByTagName ('DIV') [i++])
{
if (e.className == 'on' || e.className == 'off')
{
e.onclick = function ()
{
var getEls = document.getElementsByTagName('DIV');
for (var z=0; z<getEls.length; z++)
{
getEls[z].className=getEls[z].className.replace('show', 'hide');
getEls[z].className=getEls[z].className.replace('on', 'off');
}
this.className = 'on';
var max = this.getAttribute('title');
document.getElementById(max).className = "show";
}
}
}
}
解决方案 »
- xml解析问题
- jquery的一个fadeout效果的具体使用方法,立马结贴!
- 请推荐下WEB开发入门的书吧
- Exception in thread "main" org.hibernate.exception.SQLGrammarException: could no
- N级联下拉列表 作者:梅雪香
- select 中增加option项时,option.style = "style=background-color:"+strValue; 有问题?++在线等待,解决就结贴。
- win98下安装帝国,错误提示如:无法启动图形系统.请确认你的显卡和驱动程序是与directDraw相容的
- 谁帮我写一个判断输入必须是整数值的JS函数,谢谢!
- 如何在一个框架中控制另一个框架调用的页面?急!
- 怎么判断一个链接是否存在
- 关于JS不支持多浏览器问题
- mxGraph grapheditor 画流程图
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 id=src6 name=src61 width=100% frameborder=0 src="JobView.jsp?kind=已结束" onload="SetWinHeight(this);" > </iframe>