隨筆 - 30, 文章 - 0, 評論 - 9, 引用 - 0
          數(shù)據(jù)加載中……

          框架怎樣實(shí)現(xiàn)高度隨內(nèi)容自動增高

          main.htm:

          <html> 
              <head> 
                 <meta  http-equiv='Content-Type'  content='text/html;  charset=gb2312' /> 
                 <meta  name='author'  content='F.R.Huang(meizz梅花雪)//www.meizz.com' /> 
                 <title>iframe自適應(yīng)加載的頁面高度</title> 
              </head> 
              
              <body>
                  <div><iframe src="child.htm"></iframe></div>
              </body>
          </html>

          child.htm:

          <html> 
          <head> 
              <meta  http-equiv='Content-Type'  content='text/html;  charset=gb2312' /> 
              <meta  name='author'  content='F.R.Huang(meizz梅花雪)//www.meizz.com' /> 
              <title>iframe  自適應(yīng)其加載的網(wǎng)頁(多瀏覽器兼容)</title> 
              <script type="text/javascript">
              <!--
              function iframeAutoFit()
              {
                  try
                  {
                      if(window!=parent)
                      {
                          var a = parent.document.getElementsByTagName("IFRAME");
                          for(var i=0; i<a.length; i++) //author:meizz
                          {
                              if(a[i].contentWindow==window)
                              {
                                  var h1=0, h2=0;
                                  a[i].parentNode.style.height = a[i].offsetHeight +"px";
                                  a[i].style.height = "10px";
                                  if(document.documentElement&&document.documentElement.scrollHeight)
                                  {
                                      h1=document.documentElement.scrollHeight;
                                  }
                                  if(document.body) h2=document.body.scrollHeight;

                                  var h=Math.max(h1, h2);
                                  if(document.all) {h += 4;}
                                  if(window.opera) {h += 1;}
                                  a[i].style.height = a[i].parentNode.style.height = h +"px";
                              }
                          }
                      }
                  }
                  catch (ex){}
              }
              if(window.attachEvent)
              {
                  window.attachEvent("onload",  iframeAutoFit);
                  //window.attachEvent("onresize",  iframeAutoFit);
              }
              else if(window.addEventListener)
              {
                  window.addEventListener('load',  iframeAutoFit,  false);
                  //window.addEventListener('resize',  iframeAutoFit,  false);
              }
              //-->
              </script> 
          </head> 
          <body>
              <table border="1" width="200" style="height: 400px; background-color: yellow">
                  <tr>
                      <td>iframe  自適應(yīng)其加載的網(wǎng)頁(多瀏覽器兼容,支持XHTML)</td>
                  </tr>
              </table>
          </body> 
          </html>

           很多人反應(yīng)在IE7里使用它會死機(jī),那是因?yàn)樵谧赃m應(yīng)高度時觸發(fā)了 window.onresize 事件,而這個事件又去調(diào)用這個調(diào)整 <iframe> 高度的函數(shù),產(chǎn)生了死循環(huán)調(diào)用。

          posted on 2007-04-29 18:03 風(fēng)雨兼程 閱讀(1001) 評論(1)  編輯  收藏 所屬分類: Asp.net 2.0

          評論

          # re: 框架怎樣實(shí)現(xiàn)高度隨內(nèi)容自動增高  回復(fù)  更多評論   

          學(xué)到了 收藏...


          思想?yún)R報(bào)
          http://www.koojob.com/topic/sixianghuibao.htm
          2007-05-31 17:46 | dell
          主站蜘蛛池模板: 临泉县| 贵阳市| 明光市| 赤水市| 临西县| 黔江区| 鹤庆县| 乌鲁木齐县| 合江县| 南陵县| 石台县| 皋兰县| 汝城县| 牙克石市| 合江县| 徐闻县| 元朗区| 南昌市| 宣汉县| 普兰县| 木兰县| 阳春市| 清苑县| 肥东县| 冷水江市| 精河县| 林甸县| 鄂托克旗| 建始县| 十堰市| 淄博市| 双鸭山市| 余姚市| 青田县| 肥乡县| 镇原县| 荔浦县| 太仓市| 阿克陶县| 普定县| 休宁县|