当你在页面上使用了iframe之后,一般来说会不希望iframe显示难看的滚动条,以使iframe里面的内容和主页面的内容浑然一体。这时候你会设置  scrolling="no" 属性。但是这样一来如果iframe里面的内容是变化的,高度会随之内容的变化而变化的时候,你的iframe就会显得太长导致底下一大片空白,或者正好相反,由于iframe的高度太小导致一部分内容会被挡住。这里我提供一个兼容IE/NS/Firefox的javascript脚本实现动态调整iframe的高度。如果需要调整宽度的话,原理是一样的,本文不加详述。

首先,在你的主页面上必须包含以下这段javascript代码:

<script type="text/javascript">window.attachEvent("onload",function (){AutoSizeDIV('CODE_5404')})</script>

<script language="Javascript">
var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
//extra height in px to add to iframe in FireFox 1.0+ browsers
var FFextraHeight=getFFVersion>=0.1? 16 : 0

function dyniframesize(iframename) {
var pTar = null;
if (document.getElementById){
pTar = document.getElementById(iframename);
}
else{
eval('pTar = ' + iframename + ';');
}
if (pTar && !window.opera){
//begin resizing iframe
pTar.style.display="block"

if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){
//ns6 syntax
pTar.height = pTar.contentDocument.body.offsetHeight+FFextraHeight; 
}
else if (pTar.Document && pTar.Document.body.scrollHeight){
//ie5+ syntax
pTar.height = pTar.Document.body.scrollHeight;
}
}
}
</script>

然后对于主页面用到iframe的地方添加代码:

<script type="text/javascript">window.attachEvent("onload",function (){AutoSizeDIV('CODE_3599')})</script>

<iframe id="myTestFrameID" 
οnlοad="javascript:{dyniframesize('myTestFrameID');}" 
marginwidth=0 marginheight=0 frameborder=0 
scrolling=no src="/myiframesrc.php" 
width=200 height=100></iframe>

用javascript动态调整iframe高度相关推荐

  1. 用javascript 动态改变iframe 的src 属性

    原文地址为: 用javascript 动态改变iframe 的src 属性 <iframe id="xx"></iframe> <iframe id= ...

  2. 【Javascript】Javascript动态设置页面高度

    1.动态设置父页面iframe高度 <body onload="iframeHeight()"><script type="text/javascrip ...

  3. HTML如何设置幻灯片大小和位置,javascript – 动态调整skitter幻灯片图像大小

    如何将幻灯片图像调整(缩放)到 jquery或css或其他任何方式的不同大小? 它总是加载主图像的全宽和高度,并用以下方式控制不起作用. 可以通过以下示例代码调整图像滑块容器的大小,但如果图像大于53 ...

  4. JavaScript自动设置IFrame高度(兼容各主流浏览器)

    调用方式如下 <iframe id="ifm" name="ifm" οnlοad="SetIFrameHeight('ifm')" ...

  5. js随着浏览器窗口变化动态调整表格高度

    var height = tdHeight * (tdMaxCount - Math.round((winMaxHeight - $(window).height()) / tdHeight)); t ...

  6. Cesium开发:调整3dtile高度

    在3dtile的制作过程中,如果原始的数据中,模型数据存在高程,在生成的3dtile中也会存在高程的信息,这时就需要在系统中,底图数据的高程也要存在,这样才能和3dtile进行匹配,不过,Cesium ...

  7. iframe高度动态自适应

    参考:http://www.zhangxinxu.com/wordpress/?p=1294 一.前言碎碎念 我从来对iframe就没有什么好感,对其基本上是不屑一顾.但是人在江湖,身不由己.经理发话 ...

  8. iOS学习之路十三(动态调整UITableViewCell的高度)

    大概你第一眼看来,动态调整高度是一件不容易的事情,而且打算解决它的第一个想法往往是不正确的.在这篇文章中我将展示如何使图表单元格的高度能根据里面文本内容来动态改变,同时又不必子类化UITableVie ...

  9. UITableViewHeader 动态调整高度

    首先,标题党一枚,UITableViewHeader 是没有办法动态调整 But,我们可以通过重新赋值 Header 来达到动态调整的效果 示例 需求:header包含一个动态文本标签,具体内容多少可 ...

最新文章

  1. ThinkPHP 3.2 中获取所有函数方法名,以及注释,完整可运行
  2. 一.jquery.datatables.js表格显示
  3. 梯形积分法【OpenMP实现】多个版本
  4. proteus虚拟终端窗口不显示_Linux终端美化工具(ohmyzsh)
  5. double类型计算
  6. [动态代理三部曲:下] - 从动态代理,看Retrofit的源码实现
  7. 第十八期:网页禁止复制粘贴怎么办?教你六招轻松搞定
  8. java 值传递 引用传递_Java小白进阶之值传递-引用传递
  9. 运用异或运算实现两个数不通过中间变量交换值的原理分析
  10. PhpStorm WebStorm IDEA 官方汉化插件
  11. android打印处理服务已停止,Print Spooler服务停止 打印机服务无法启动的完美解决方案共享...
  12. 相机成像原理与数学模型
  13. 检错码与纠错码,一码归一码
  14. 720P、1080P、4K是什么意思?
  15. 数学建模-层次分析法(AHP)方法回顾
  16. Macbook Pro touch bar 设置小tips
  17. 101个著名的管理学及心理学效应
  18. 转载一篇过来人谈的大学期间关于课外学习的意见lt;出自左飞老师笔记gt;
  19. 力软工作流:协同OA精准化采购平台自主搭建
  20. 清明节---山东又叫寒食节--吃冷食

热门文章

  1. 数据库SQL优化总结
  2. Jquery Validate 动态添加校验
  3. 火狐firefox插件配合scrapy,注意tbody会导致empty
  4. 浅谈HTTP中Get与Post的区别[转 hyddd]
  5. visual studio 库
  6. python—15种字符串操作
  7. python os 常用方法
  8. layer:好看的弹出窗口
  9. (转)淘淘商城系列——MyBatis分页插件(PageHelper)的使用以及商品列表展示
  10. 天地图专题七:行政区域标记,热力图(以广西为例)