国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

js實(shí)現(xiàn)的真正的iframe高度自適應(yīng)(兼容IE,FF,Opera)

2019-11-21 00:41:51
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
找到了下面這個(gè)js
復(fù)制代碼 代碼如下:

function SetCwinHeight(obj)
{
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;
}
}
}

然后……
進(jìn)入了測(cè)試過(guò)程(調(diào)用很簡(jiǎn)單,先略過(guò))
1.IE ---通過(guò) 但是高度還是有稍微的差距,很小,滾動(dòng)條還在
2.FF --- 通過(guò) 與IE一樣,有小差距
3.Opera --- 看那個(gè)JS的條件就知道,通不過(guò)的
但主流瀏覽器至少要通過(guò)這三項(xiàng)撒!!!
于是,還是Google
搜索 各瀏覽器在處理 document.scrollHeight 或者 offsetHeigth時(shí)的特殊現(xiàn)象
發(fā)現(xiàn),Opera瀏覽器在處理iframe內(nèi)容的時(shí)候,用的是contentWindow
而處理內(nèi)容高度的時(shí)候,卻與IE一致
從而,有了下面這段js
復(fù)制代碼 代碼如下:

<html>
<head>
<script>
function SetCwinHeight(obj)
{
var cwin=obj;
if (document.getElementById)
{
if (cwin && !window.opera)
{
if (cwin.contentDocument && cwin.contentDocument.body.offsetHeight)
cwin.height = cwin.contentDocument.body.offsetHeight + 20; //FF NS
else if(cwin.Document && cwin.Document.body.scrollHeight)
cwin.height = cwin.Document.body.scrollHeight + 10;//IE
}
else
{
if(cwin.contentWindow.document && cwin.contentWindow.document.body.scrollHeight)
cwin.height = cwin.contentWindow.document.body.scrollHeight;//Opera
}
}
}
</script>
</head>
<body>
<iframe src="20103622440.html" onload="SetCwinHeight(this);" width="600px">
</body>
</html>

這樣一來(lái),總算把這三個(gè)瀏覽器給適應(yīng)了
做為程序員,還是要細(xì)心點(diǎn)
再測(cè)試一下
OK...3個(gè)瀏覽器均正常顯示,也無(wú)iframe的縱向滾動(dòng)條了
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 铜陵市| 阿克苏市| 盐城市| 建水县| 丰城市| 仁怀市| 桃园市| 米泉市| 红原县| 吉安县| 沛县| 萨迦县| 花莲县| 阜阳市| 南昌市| 浦北县| 大邑县| 梁平县| 石渠县| 柘荣县| 彭泽县| 彭州市| 盐池县| 汨罗市| 筠连县| 文登市| 海原县| 同心县| 滨海县| 青阳县| 九寨沟县| 太原市| 遵化市| 合川市| 东乌珠穆沁旗| 江孜县| 尚志市| 海晏县| 砀山县| 海南省| 淮北市|