可以用:netscape 4.7 通过
<html>
<head>
<script language="javascript">
    function changeContent(selObj) {
         var selValue = selObj.options[selObj.selectedIndex].value;
         var divObj = null;
         if(document.all)
              divObj = window.divMain;
         else
              divObj = document.layers["divMain"];
         
         var strToDisplay = selValue;
         if(document.all){
              divObj.innerText = strToDisplay; 
         }else {
              divObj.document.open();
              divObj.document.write(strToDisplay);
              divObj.document.close();
         }
    }
</script>
<style type="text/css">
    #main{position:absolute;  visibility: show}
    #bill{position:absolute;  visibility: hidden}
</style>
</head>
<body>
<form><table><tr>
<TD align="right"><font face="Arial">
    <select name="sel1" onChange = "changeContent(this)">
         <option value="Display 1">Display 1</option>
         <option value="Display 2">Display 2</option>
         <option value="Display 3">Display 3</option>
    </select>
</TD>
</tr></table>
</form><div id="divMain" name="divMain" style="visibility:visible;position:absolute">
</div></body>
</html>

解决方案 »

  1.   

    在NS6中,我一般使用innerHTML+正则来解析。看看:http://expert.csdn.net/Expert/TopicView1.asp?id=1364262注意:
    strFrame+='onclick="parent.tmpSelectYearInnerHTML(innerHTML.match(/\\d{4}/).toString());" title="点击这里选择年份"><span Author=meizz id=meizzYearHead></span></td>';strFrame+=' onmouseout="style.backgroundColor=\'white\'" onclick="parent.tmpSelectMonthInnerHTML(innerHTML.match(/\\d\\d?/).toString())"';strFrame+='<td width=20 height=20 id=meizzDay'+n+' style="font-size:12px" Author=meizz onclick=parent.meizzDayClick(this.innerHTML.match(/\\d+/).toString(),0)></td>';n++;}...NS4.78没有研究过。
      

  2.   

    补充:
    document.all为真则为IE,用innerText
    否则用下面的方法实现该效果:
                  divObj.document.open();
                  divObj.document.write(strToDisplay);
                  divObj.document.close();所为上面的代码是IE及NS兼容的
      

  3.   

    photo123(烂柯居士) :你的代码在NS6.2下面通不过啊!难道NS4.78反倒支持innerText了?
      

  4.   

    结论:NS的兼容性确实不如IE……连自身都无法保持兼容
      

  5.   

    这么比不是很公平。IE3和IE6就很兼容吗?
      

  6.   

    photo123(烂柯居士)的代码在NS4下是可以用的.我有一个问题要问你:
    为什么我去掉了 <div id="divMain" name="divMain" style="visibility:visible;position:absolute"> 里面的:position:absolute"后,代码就失效了呢??????告知后,马上给分!!!
      

  7.   

    在Netscape6中不存在了layer,也就是说,遇到<layer></layer>时pass,但4.7中是支持的。<div id="divMain" name="divMain" style="visibility:visible;position:absolute">
    </div>
    改为
    <layer></layer>
    应该就可以了,因为<div>是微软的专利,4。7中用layer在netscape中取代它
      

  8.   

    去掉了 <div id="divMain" name="divMain" style="visibility:visible;position:absolute"> 里面的:position:absolute"后,NS会出现错误:divObj has no properties.因为去掉了position:absolute后,NS会认为它不是对象
      

  9.   

    Netscape 6 does not support the LAYER and ILAYER elements. It means that the browser will silently ignore the <LAYER>, </LAYER>, <ILAYER>, and </ILAYER> tags. The browser will
                        render the HTML page as if those tags are not present. Any other elements (non-LAYER) between <LAYER> and </LAYER> will be rendered as if the <LAYER> and </LAYER> are missing.
                        Obviously, this will change the look of the page. Let's look at an example. The following LAYER element includes one line of text:                    <LAYER BGCOLOR="tan">
                        In Netscape Navigator, these lines should be colored tan. 
                        They should be white in Netscape 6 and IE.
                        </LAYER>
      

  10.   

    to:adu_neu(寒刃) 现在的问题好象和您说的恰恰相反!而且用layer的话在IE下通不过
      

  11.   

    photo123(烂柯居士) 我现在的问题非常的奇怪,
    就是如果加上position:absolute后,是可以使用了,但是在页面上显示的不正确.
    我是把它放在FORM里面的.
      

  12.   

    还有就是为什么我的NS从来都不提示什么详细的错误信息.
    能不能象IE那样能够给出详细的信息,并且有时候可以跳如INTERDEV中.
      

  13.   

    NS看错误信息很麻烦
    注意看状态栏上是否有运行错误提示
    然后在地址栏内打上javascript:回车另外要定位的话加上left和top属性即可<html>
    <head>
    <script language="javascript">
        function changeContent(selObj) {
             var selValue = selObj.options[selObj.selectedIndex].value;
             var divObj = null;
             if(document.all)
                  divObj = window.divMain;
             else
                  divObj = document.layers["divMain"];
             
             var strToDisplay = selValue;
             if(document.all){
                  divObj.innerHTML = strToDisplay; 
             }else {
                  divObj.document.open();
                  divObj.document.write(strToDisplay);
                  divObj.document.close();
             }
        }
    </script>
    <style type="text/css">
        #main{position:absolute;  visibility: show}
        #bill{position:absolute;  visibility: hidden}
    </style>
    </head>
    <body>
    <form><table><tr>
    <TD align="right"><font face="Arial">
        <select name="sel1" onChange = "changeContent(this)">
             <option value="1">Display 1</option>
             <option value="2">Display 2</option>
             <option value="3">Display 3</option>
        </select>
    </TD>
    </tr></table>
    </form><div id="divMain" name="divMain" style="visibility:visible;position:absolute;left:100;top:500">
    </div></body>
    </html>