zoukankan      html  css  js  c++  java
  • 动态设置iframe的高度(同域情况)兼容多种浏览器

    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');}"

    Kyle

  • 相关阅读:
    [chrome]click事件会触发mouseleave
    鼠标的指针状态 以及 事件禁用
    CSS3 线性渐变(linear-gradient)
    css 的函数 calc() 、linear-gradient()、、、
    1.闰年的计算方法。 2.某一月的周数
    moment.js 使用方法总结
    Echarts 版本查看
    如何使用 onscroll / scrollTo() / scrollBy()
    水平居中、垂直居中
    【LeetCode】22. Generate Parentheses (I thought I know Python...)
  • 原文地址:https://www.cnblogs.com/lovewife/p/2467706.html
Copyright © 2011-2022 走看看