其中成功的是这段代码,Opera浏览器在处理iframe内容的时候

2019-11-26 作者:美高梅-服务器   |   浏览(135)

找到了下边那些js 复制代码 代码如下: function SetCwinHeight { var cwin=obj; if (document.getElementById) { if (cwin && !window.opera) { if (cwin.contentDocument && cwin.contentDocument.body.offsetHeight) cwin.height = cwin.contentDocument.body.offsetHeight + 20; else if(cwin.Document && cwin.Document.body.scrollHeight) cwin.height = cwin.Document.body.scrollHeight + 10; } } } 然后…… 步入了测量检验进程 1.IE ---透过 然则可观依旧有多少的出入,相当的小,滚动条还在 2.FF --- 经过 与IE同样,有小差异 3.Opera --- 看那多少个JS的法规就精通,通然则的 但主流浏览器最少要透过那三项撒!!! 于是,依旧Google 寻觅各浏览器在拍卖 document.scrollHeight 也许 offsetHeigth时的出格情形开掘,Opera浏览器在拍卖iframe内容的时候,用的是contentWindow 而拍卖内容惊人的时候,却与IE大器晚成致 进而,有了下边这段js 复制代码 代码如下:

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

首先中方法批量iframe自适应:
做事中境遇iframe随所含内容自适应中度的主题素材,曾经在英特网见到过相符难点的缓和方法,于是寻觅一下,找到了一个比较完整的能够合营浏览器的缓和办法,省得要好写了。
即使并不是本身写,思路依旧要驾驭,基本上正是拿到iframe属性src所钦赐的盈盈文档中剧情的万丈,然后用来安装iframe自个儿的莫斯中国科学技术大学学,在iframe所在页面载入时对页面中的全体须求自适应中度的iframe举行活动安装,省时省力,如若鲜明页面中全体iframe都亟待自适应中度,直接获得iframe数组给代码,就连ID都无须自个儿写了,完毕程序消除。(代码贴上来:卡塔尔 

小项目龙里中学多媒体体育场所管理种类中后台管理使用了iframe.由于要动态载入内容,所以要求iframe自适应内容页的中度.用谷歌(Google卡塔 尔(英语:State of Qatar)寻找到众多答案,当中成功的是这段代码

那样一来,总算把那八个浏览器给适应了 做为技师,照旧要留神点 再测验一下 OK...3个浏览器均符合规律展现,也无iframe的纵向滚动条了

    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的跨域难点变成回绝访谈的)
事先本身也蒙受过这一个主题材料,为了博取答案去网络寻找,发掘成成都百货上千人也遇到了这么的主题材料,今后就把消除措施分享一下

<script language="javascript"> 
//输入你期待依据页面中度自动调度中度的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[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> 

<script type="text/javascript">
function SetCwinHeight() {
var iframeid = document.getElementById("maincontent1"); //iframe id
if (document.getElementById) {
if (iframeid && !window.opera) {
if (iframeid.contentDocument && iframeid.contentDocument.body.offsetHeight) {
iframeid.height = iframeid.contentDocument.body.offsetHeight;
} else if (iframeid.Document && iframeid.Document.body.scrollHeight) {
iframeid.height = iframeid.Document.body.scrollHeight;
}
}
}
}
</script>

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>

互连网有人改革了艺术,杀绝了当iframe所饱含文书档案内容惊人动态变化时自动调治iframe中度的难题,原理是在iframe所在页面不断扫描iframe满含文书档案的开始和结果惊人并修改iframe本人高度,这种情势经常解除了难题,可是对页面速度和系统财富占用是否有影响还很难说,以为方法有些顽固,应该有更好的消弭格局。
第两种格局,只针对知道的iframe的ID调用

iframe代码:

2、给您网址里具备的被含有文件之中每个都投入
<script language = "JavaScript" src = "bottom.js"/></script>
3、OK,收工!
在WINXP、IE6上面测验通过。很简短吗!

复制代码代码如下:

复制代码 代码如下:

本文由美高梅赌堵59599发布于美高梅-服务器,转载请注明出处:其中成功的是这段代码,Opera浏览器在处理iframe内容的时候

关键词: