Java世界

          學習筆記

          常用鏈接

          統計

          積分與排名

          天籟村

          新華網

          雅虎

          最新評論

          如何實現iframe(嵌入式幀)的自適應高度

          好幾次看到有人提問問到如何實現 iframe 的自適應高度,能夠隨著頁面的長度自動的適應以免除頁面和 iframe 同時出現滾動條的現象,剛好我在工作中也碰到了類似問題,于是上網翻查,東抄抄西看看,弄出來這么一個函數,貼到頁面里面就能用了。不敢獨享,大家要是覺得有用,歡迎使用

          源代碼如下

          <script type="text/javascript">
          ?//** iframe自動適應頁面 **//

          ?//輸入你希望根據頁面高度自動調整高度的iframe的名稱的列表
          ?//用逗號把每個iframe的ID分隔. 例如: ["myframe1", "myframe2"],可以只有一個窗體,則不用逗號。

          ?//定義iframe的ID
          ?var iframeids=["test"]

          ?//如果用戶的瀏覽器不支持iframe是否將iframe隱藏 yes 表示隱藏,no表示不隱藏
          ?var iframehide="yes"

          ?function dyniframesize()
          ?{
          ? var dyniframe=new Array()
          ? for (i=0; i<iframeids.length; i++)
          ? {
          ?? if (document.getElementById)
          ?? {
          ??? //自動調整iframe高度
          ??? dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);
          ??? if (dyniframe[i] && !window.opera)
          ??? {
          ???? dyniframe[i].style.display="block"
          ???? if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) //如果用戶的瀏覽器是NetScape
          ????? dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight;
          ???? else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) //如果用戶的瀏覽器是IE
          ????? dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
          ??? }
          ?? }
          ?? //根據設定的參數來處理不支持iframe的瀏覽器的顯示問題
          ?? if ((document.all || document.getElementById) && iframehide=="no")
          ?? {
          ??? var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
          ??? tempobj.style.display="block"
          ?? }
          ? }
          ?}

          ?if (window.addEventListener)
          ?window.addEventListener("load", dyniframesize, false)
          ?else if (window.attachEvent)
          ?window.attachEvent("onload", dyniframesize)
          ?else
          ?window.onload=dyniframesize
          </script>

          使用的時候只要貼在<head></head>里面就可以了

          posted on 2009-07-15 11:45 Rabbit 閱讀(168) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 曲阜市| 鄂托克前旗| 临潭县| 剑川县| 英超| 镇安县| 高唐县| 肇庆市| 西安市| 客服| 观塘区| 漳浦县| 雅安市| 毕节市| 凤庆县| 吐鲁番市| 定西市| 比如县| 斗六市| 札达县| 怀柔区| 河西区| 遵义市| 三门峡市| 常山县| 河北省| 泌阳县| 长春市| 普定县| 庆安县| 建水县| 凤阳县| 琼海市| 牙克石市| 新巴尔虎右旗| 邢台市| 依兰县| 江永县| 伊宁市| 武隆县| 辰溪县|