还有就是一个很简单的逻辑问题
代码:var ie = document.all ? 1 : 0 
      if(ie){var sidemenu = document.all.master;}假设document.all为真,那代码执行到if(ie)里ie的值是1还是document.all?1:0。我刚直接把var ie = document.all?1:0改为var = 1代码就出错了 

解决方案 »

  1.   


    var ie = 1;ie浏览器里面里面ie就是1。。其他不支持document.all里面 就是0 
      

  2.   

    你代码写的
    var = 1;
    当然出错。
      

  3.   

    可以用AJAX 的方法判断:
    if(window.ActiveXObject){
    alert('ie')
    }else if(window.XMLHttpRequest){
    alert('not ie')
    }
      

  4.   


    我说的是var ie = 1; 打少了点....
      

  5.   

    var isie = !!document.all ;我都这样判断
     
      

  6.   

    很难的问题啊!!!!<script type="text/javascript">
            function browser() {
                var k = /(webkit)[ \/]([\w.]+)/, o = /(opera)(?:.*version)?[ \/]([\w.]+)/, i = /(msie) ([\w.]+)/, n = /(mozilla)(?:.*? rv:([\w.]+))?/, u = navigator.userAgent.toLowerCase(), h = k.exec(u) || o.exec(u) || i.exec(u) || u.indexOf("compatible") < 0 && n.exec(u) || [], b = { z: h[1] || "", v: h[2] || "0" }, r = {}; if (b.z) { r[b.z] = true; r.version = b.v; } if (r.webkit) { r.safari = true; } return r;
            }
            function fncheck() {
                var brow;
                if (browser().msie) brow = "msie";
                if (browser().opera) brow = "opera";
                if (browser().mozilla) brow = "mozilla";
                if (browser().safari) brow = "safari";
                alert("浏览器:" + brow + " " + browser().version);
            }
        </script>
        <div onclick="javascript:fncheck();">click me</div>