News Contents
信息中心

JS动态修改iframe高度和宽度的方法/iframe 去除边框和自适应高度

发表日期:2018/7/11      浏览次数:

 方法一:JS动态修改iframe高度和宽度的方法

Markup

<!DOCTYPE html>
<html>
<head>
<script>
function changeSize()
{
document.getElementById("myframe").height="300";
document.getElementById("myframe").width="300";
}
</script>
</head>
<body>
<iframe id="myframe" src="/default.asp"
height="200" width="200">
<p>Your browser does not support iframes.</p>
</iframe>
<br><br>
<input type="button" onclick="changeSize()"
value="Change size">
</body>
</html>

方法二:iframe 去除边框和自适应高度

因为做项目经常要用到页面镶嵌,每次都忘记一些细节问题,特地写下来以便查阅,很久以前是网上搜到一些前辈的,但是时间太久忘记是哪位了,没办法给具体链接。

以下是js代码:

Markup

<script type="text/javascript">  
function reinitIframe() {  
    var iframe = document.getElementById("frame");  
    try {  
        var bHeight = iframe.contentWindow.document.body.scrollHeight;  
  
        var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;  
  
        var height = Math.max(bHeight, dHeight);  
  
        iframe.height = height;  
  
    } catch (ex) {}  
  
}  
window.setInterval("reinitIframe()", 200);  
</script>

方法三:js控制iframe的高度/宽度,自适应内容

Markup

页面使用方法:
<iframe name="ifr_show" id="ifr_show" src="#" marginwidth="0" marginheight="0" frameborder="0" scrolling="no" width="100%" onload="IFrameReSize('ifr_show');"></iframe>
JS:
<script language="javascript" type="text/javascript"> 
function IFrameReSize(iframename) {
var pTar = document.getElementByIdx_x(iframename);
if (pTar) {
//iframe高度自适应
if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight) {
pTar.height = pTar.contentDocument.body.offsetHeight;
}else if (pTar.Document && pTar.Document.body.scrollHeight) {
pTar.height = pTar.Document.body.scrollHeight;
}
//iframe宽度自适应
if (pTar.contentDocument && pTar.contentDocument.body.offsetWidth) {
pTar.width = pTar.contentDocument.body.offsetWidth;
}else if (pTar.Document && pTar.Document.body.scrollWidth) {
pTar.width = pTar.Document.body.scrollWidth;
}
}
}
</script>

方法四:html5移动端引入优酷视频iframe自适应

Markup

<iframe height=498 width=510 src="http://player.youku.com/embed/XMTI4MjU5OTA3Mg==" frameborder=0 allowfullscreen></iframe>

css里设置iframe的宽度为100%

根据屏幕宽度自适应,这里我设定视频16/9的固定比例

JavaScript

window.onload = window.onresize = function () {
    resizeIframe();
}
var resizeIframe=function(){
    var bodyw=document.body.clientWidth;
    for(var ilength=0;ilength<=document.getElementsByTagName("iframe").length;ilength++){
        document.getElementsByTagName("iframe")[ilength].height = bodyw*9/16;//设定高度
    }
}
盛大建站承接个人、公司、企业的网站建设、网页设计、网店制作、独立商城制作、外贸网站制作,也承接同行介绍的业务,欢迎联系!
本站承接主要业务如下:
1、提供免备案虚拟主机(网站空间),有独立国内服务器、高速美国服务器、香港服务器、韩国服务器、日本服务器,>> http://www.fuanxx.com
2、网站建设:个人网店制作、企业建站、公司网站、新闻、下载等;论坛、博客网站搭建,承接外贸英文站制作
3、承接阿里巴巴、京东、淘宝、天猫等的商品数据采集
4、网站防钓鱼,可以过360、QQ、搜狗、金山、微信拦截
5、要就发IP网站限制访问系统,防止同行抄袭并保障海外客户访问不受影响,>> http://www.198ip.com
十年如一日,我们专注于提供高品质 定制网站建设服务!
您的信任,我们的责任,期待与您的合作!