ifram动态根据内容网页的高度调整高度
我试了网上的不少代码都不行,网页在同一网站的可以,可是内容网页不在同一网站就不起作用了,请高手指点,万分感谢 问题点数:100、回复次数:12Top
1 楼hbhbhbhbhb1021(天外水火(我要多努力))回复于 2005-12-28 12:37:07 得分 15
写在主页面上,不要写在iframe里面
因为默认的是不能跨域
Top
2 楼hbhbhbhbhb1021(天外水火(我要多努力))回复于 2005-12-28 12:41:26 得分 15
<iframe name=iframe1 onload=haha() style="width:300;height:300" src="3.htm"></iframe>
<script language=javascript>
function haha()
{
document.getElementById("iframe1").style.height=iframe1.document.body.scrollHeight+20
}
</script>Top
3 楼srnld(天涯)回复于 2005-12-28 12:47:55 得分 15
实现 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>Top
4 楼srnld(天涯)回复于 2005-12-28 12:49:02 得分 10
<iframe name="frame" src="aa.html" style="height:expression(eval(frame.document.body.scrollHeight))" align="left" width="100%" marginwidth="0" marginheight="0" scrolling="no" FRAMEBORDER="1"></iframe>Top
5 楼czq9966(宁录)(毛主席领导咱闹革命……)回复于 2005-12-28 13:10:43 得分 10
UPTop
6 楼afanti_nj(阿凡提)回复于 2005-12-28 13:43:24 得分 0
<HTML><HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<BODY>
test<br>
<iframe name="frame" src="http://www.xnsk.net" style="height:expression(eval(frame.document.body.scrollHeight))" align="left" width="100%" marginwidth="0" marginheight="0" scrolling="no" FRAMEBORDER="1"></iframe>
<br><br>test
</BODY></HTML>
上面是个页面的测试代码,如果放在同一个网站上进行访问是可以实现的,如果不是的就不行了,有没办法解决,上面的代码我也试过的还是不行Top
7 楼kele2005(土坷垃)回复于 2005-12-28 14:42:53 得分 15
........
<script language="javascript">
function ChangeWidth()
{ var theHeight = document.main.document.body.scrollHeight;
var theWidth = document.main.document.body.scrollWidth;
//alert(theHeight);
document.main.document.body.oncontextmenu="window.event.returnValue=false";
document.main.resizeTo(theWidth,theHeight);
}
</script>
.............
<iframe name=frame src=youpage.htm>
.........
然后在youpage.htm的代码结尾加上如下代码即可:
<script language="javascript">
parent.ChangeWidth();
</script>Top
8 楼hbhbhbhbhb1021(天外水火(我要多努力))回复于 2005-12-28 15:04:42 得分 10
这个问题我看到过,如果引用的是别人的页面就不好办了。如果是自己的就好办,就是里面的代码可以修改就好办。
可以在里面用cookie写值,在外面当onload之后读值,即可实现Top
9 楼afanti_nj(阿凡提)回复于 2005-12-28 15:21:46 得分 0
郁闷,还是不行,显示javascript错误,错误类型为:没有权限,怎么办呢郁闷Top
10 楼tigerwen01(小虎)回复于 2005-12-28 16:11:59 得分 10
要访问别人的网站得先要有权限,没有权限是访问不了的。Top
11 楼afanti_nj(阿凡提)回复于 2005-12-29 09:14:26 得分 0
我的目的是让别人的网站嵌入自己网站的网页,不知道应该怎么设置权限呀,请指教Top
12 楼afanti_nj(阿凡提)回复于 2005-12-30 09:40:17 得分 0
怎么办呀Top




