<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 122,  comments - 25,  trackbacks - 0
    1、目的
    系統(tǒng)通過一內(nèi)嵌頁面(iframe) 來展現(xiàn)網(wǎng)頁內(nèi)容(也包括內(nèi)嵌頁中再嵌一個(gè)網(wǎng)頁),這將會(huì)引起如下幾個(gè)問題:
    a.不同的網(wǎng)頁內(nèi)容多少不一致,導(dǎo)致iframe的高度無法與實(shí)現(xiàn)內(nèi)容或?yàn)g覽器高度相匹配。
    b.窗口縮放時(shí),不能iframe不能進(jìn)行自動(dòng)調(diào)整。

    針對(duì)這兩個(gè)問題,寫了一些js方法,使iframe自動(dòng)適應(yīng)內(nèi)容或?yàn)g覽器高度。

    2、js代碼
    在主框回頁面中包括如下js方法:
    /**
     * 內(nèi)嵌頁面的高度設(shè)置
     
    */
    function handleFrameLoad() {
     
    var hDoc = getBodyHeight(document);
     
    var tblmain =  document.getElementById('tblMain');
     
    var mFrame = window.mainFrame;
     
    var hFrameDoc = getFrameHeight(mFrame);
     
    var hTable = hDoc-80; //減去該頁面除iframe外其他控件所占的高度.
     
    if(hFrameDoc > hTable) hTable = hFrameDoc;
     tblmain.style.height 
    = hTable;
     mFrame.height 
    = hTable;
     
    if(window.mainFrame.moduleRight != null){
       
    //表示該內(nèi)嵌頁,包含內(nèi)嵌的頁面,頁iframe的id固定為moduleRight。
        initFrameHeight(mFrame,hTable);
     }
    }

    /**
     * 獲取當(dāng)前頁面的高度
     
    */
    function getBodyHeight(doc){
      
    if(doc.all) return doc.body.offsetHeight;
      
    else return doc.body.scrollHeight;
    }

    /**
     * 獲取內(nèi)嵌頁中的高度.
     * 若另含子內(nèi)嵌(
    moduleRight)頁時(shí),應(yīng)考慮該頁面的高度.
     
    */
    function getFrameHeight(mFrame){
      
    var h1 = mFrame.document.body.offsetHeight;
      
    var h2 = mFrame.document.body.scrollHeight;
      
    if(mFrame.moduleRight != null){
          
    var h3 = mFrame.moduleRight.document.body.scrollHeight;
        
    if(h3 > h2) h2 = h3;
      }
      
    return h2;
    }

    /**
     * 設(shè)置子內(nèi)嵌頁面的高度.
     * 通過設(shè)置iframe所在table的高度來調(diào)整。
     
    */
    function initFrameHeight(frame,hFrame){
      
    var tbl = frame.document.getElementById('tblMainFrame');
      tbl.style.height 
    = hFrame;
    }

    3、其他設(shè)置
    主頁面(main.jsp),在加載完畢(onload)、窗口大小調(diào)整(onresize),以及iframe的加載完畢時(shí),需調(diào)用:handleFrameLoad,代碼如下:
    <html>
       
      
    <body onload="handleFrameLoad();" onResize="handleFrameLoad();">
       
      
    <iframe src="" id="mainFrame" name="mainFrame" border=0 width=100% height=100% frameborder="0" marginwidth="0" hspace="0" scrolling="no" onload="handleFrameLoad();"/>
       
      
    </body>
    </html

    其他內(nèi)嵌頁如下(注:此處的iframe高度設(shè)為100%,其高度由父頁面通過設(shè)置table<tblMainFrame>的高度來進(jìn)行調(diào)整):
    <html>
       
      
    <body class="body" style="overflow:hidden;margin:0px;padding:0px">
        
    <table width="100%" height="100%" id="tblMainFrame" border="0" align="center" cellpadding="0" cellspacing="0">
         
    <tr>
           
    <td id='content' height=100%>
             
    <iframe src="about:blank" width="100%" height="100%" name="moduleRight" id="moduleRight" frameborder="0" hspace="0"/>
           
    </td>
         
    </tr>
        
    </table>
      
    </body>
    </html

    4、樣例下載: sample
    posted on 2008-01-17 13:56 josson 閱讀(9302) 評(píng)論(2)  編輯  收藏 所屬分類: web開發(fā)


    FeedBack:
    # re: iframe 高度自適應(yīng)
    2008-09-08 22:44 | cssplay
    iframe自適應(yīng)高度及其演示實(shí)例
    http://www.cssplay.org.cn/xhtml-tutorial/20080908/763.html  回復(fù)  更多評(píng)論
      
    # re: iframe 高度自適應(yīng)
    2013-12-24 21:57 | 3a教程
    1909434428@qq.com  回復(fù)  更多評(píng)論
      
    <2008年1月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    收藏夾

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲成av人在线观看网站| 亚洲天堂一区二区三区四区| 风间由美在线亚洲一区| 嫩草视频在线免费观看| 亚洲国产精品成人综合色在线| 午夜一级毛片免费视频| 免费看一级一级人妻片| 亚洲高清无码在线观看| a级片免费在线观看| 久久精品国产亚洲AV无码偷窥| 久久久久久精品免费免费自慰| 亚洲一卡2卡4卡5卡6卡残暴在线| 欧美日韩国产免费一区二区三区| 亚洲欧美日韩一区二区三区在线| 国产极品粉嫩泬免费观看| 一区二区在线免费视频| 久久香蕉国产线看观看亚洲片| 最新黄色免费网站| 亚洲国产精品ⅴa在线观看| 4338×亚洲全国最大色成网站| 免费国产在线视频| 国产精品亚洲精品观看不卡| 国产精品国产免费无码专区不卡| 一级特黄a大片免费| 亚洲人成网站在线播放影院在线| 7723日本高清完整版免费| 国产精品亚洲AV三区| 国产亚洲精午夜久久久久久| 91av视频免费在线观看| 国产精品亚洲专区在线观看 | 亚洲国产成人五月综合网| 成人免费av一区二区三区| 亚洲综合自拍成人| 四虎影在线永久免费观看| 久久青青草原国产精品免费| 久久亚洲国产最新网站| 久久久久国产成人精品亚洲午夜 | 免费特级黄毛片在线成人观看| 成人网站免费大全日韩国产| 亚洲日韩国产精品乱-久| 亚洲最大AV网站在线观看|