随风而行

^o^ 格言:相信没有做不到的事情,只有想不到的事情.
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

动态设置iframe的高度(同域情况)兼容多种浏览器

Posted on 2012-04-24 11:14  随风而行  阅读(2321)  评论(0编辑  收藏  举报

function whichBrs() {
var agt = navigator.userAgent.toLowerCase();
if (agt.indexOf("opera") != -1) return 'Opera';
if (agt.indexOf("staroffice") != -1) return 'Star Office';
if (agt.indexOf("beonex") != -1) return 'Beonex';
if (agt.indexOf("chimera") != -1) return 'Chimera';
if (agt.indexOf("netpositive") != -1) return 'NetPositive';
if (agt.indexOf("phoenix") != -1) return 'Phoenix';
if (agt.indexOf("firefox") != -1) return 'Firefox';
if (agt.indexOf("safari") != -1) return 'Safari';
if (agt.indexOf("skipstone") != -1) return 'SkipStone';
if (agt.indexOf("msie") != -1) return 'Internet Explorer';
if (agt.indexOf("netscape") != -1) return 'Netscape';
if (agt.indexOf("mozilla/5.0") != -1) return 'Mozilla';
if (agt.indexOf('\/') != -1) {
if (agt.substr(0, agt.indexOf('\/')) != 'mozilla') {
return navigator.userAgent.substr(0, agt.indexOf('\/'));
}
else return 'Netscape';
} else if (agt.indexOf(' ') != -1)
return navigator.userAgent.substr(0, agt.indexOf(' '));
else return navigator.userAgent;
}

function dyniframesize(iframename) {
var iframe = null;
if (document.getElementById) {
iframe = document.getElementById(iframename);
}
else {
eval('iframe = ' + iframename + ';');
}

//begin resizing iframe
iframe.style.display = "block"

if (iframe.Document) {//ie自有属性scrollHeight
//iframe.height = iframe.contentDocument.body.scrollHeight;
iframe.height = iframe.Document.body.scrollHeight;
} else if (iframe.contentDocument) {//ie,firefox,chrome,opera,safari
if (whichBrs() == "Firefox") {
iframe.height = iframe.contentDocument.documentElement.offsetHeight;
}
else { //safari
iframe.height = iframe.contentDocument.documentElement.scrollHeight;
}
}
}

 

调用:  onload="javascript:{dyniframesize('iframe的ID');}"