大家好iframe兼容问题请教:我下面的代码在IE中运行正常,但是在 Firefox 下却没有反应主页面 a.html 中
<iframe name="mainpage" id="mainpage" src="b.html" frameBorder="0" frameSpacing="0" width="100%" scrolling="no" allowtransparency="true"></iframe>
在 b.html 页面中
<script language="JavaScript" type="text/JavaScript">
parent.document.all(self.name).height=document.body.scrollHeight;
</script>
问题:在b.html 页面中那行代码,怎样修改才能兼容Firefox浏览器呢?谢谢大家帮忙

解决方案 »

  1.   


    parent.document.getElementById("mainpage").style.height=document.body.scrollHeight;
    这种我已经试过,是没有反应的。
      

  2.   


    parent.document.getElementById("mainpage").style.height=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight);
      

  3.   

    这样试试:
    <script>
    function autoHeight() {
    if (!parent) return;
    var frame = parent.document.getElementsByName(self.name)[0];
    frame.style.height = document.body.scrollHeight;
    }window.onload = function() {
    autoHeight();
    }
    </script>
      

  4.   

    不对,还要加pxparent.document.getElementById("mainpage").style.height=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight) + "px";
      

  5.   

    // a页面中
    <iframe name="mainpage" id="mainpage" src="b.html" frameBorder="0" frameSpacing="0" width="100%" scrolling="no" allowtransparency="true"
    onload="this.height=document.getElementById('mainpage').contentWindow.document.body.scrollHeight+10;"  
    ></iframe>// 这里的不用加PX;
      

  6.   

    // a页面中
    <iframe name="mainpage" id="mainpage" src="b.html" frameBorder="0" frameSpacing="0" width="100%" scrolling="no" allowtransparency="true"
    onload="this.height=document.getElementById('mainpage').contentWindow.document.body.scrollHeight+10;"
    ></iframe>// 这里的不用加PX;
      

  7.   

    你不就是想让iframe自伸展吗?不用这么麻烦在父页面写就可以了!(不跨域就行)function dyniframesize(down) { 
    var pTar = null; 
    if ($){ 
    pTar = $(down); 

    else{ 
    eval('pTar = ' + down + ';'); 

    if (pTar && !window.opera){ 
    //begin resizing iframe 
    pTar.style.display="block" 
    if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){ 
    //ns6 syntax 
    pTar.height = pTar.contentDocument.body.offsetHeight;

    else if (pTar.Document && pTar.Document.body.scrollHeight){ 
    //ie5+ syntax 
    pTar.height = pTar.Document.body.scrollHeight; 
    //pTar.width = pTar.Document.body.scrollWidth; 


    } <iframe name="mainpage" id="mainpage" src="b.html" frameBorder="0" frameSpacing="0" width="100%" scrolling="no" allowtransparency="true" onload="dyniframesize('mainpage');"></iframe>