就是一个判断浏览器的脚本,对一个问题不明白,请教大家。
并且Firefox Safari都是提示“你在使用火狐浏览器”,很奇怪。
===============================================================================================================
<script type="text/javascript">
var browser=new Object();
browser.version=parseInt(navigator.appVersion);
browser.isNetscape=false;
browser.isMicrosoft=false;
if(navigator.appName.indexOf("Netscape")!=-1)//书上的 正确
if(navigator.appName.indexOf("Netscape"))//修改成这样后却不正确了  刚好相反
{ browser.isNetscape=true; document.write("你在使用火狐浏览器"); }
if(navigator.appName.indexOf("Microsoft")!=-1)//书上的 正确
if(navigator.appName.indexOf("Microsoft"))//修改成这样后却不正确了  刚好相反
{ browser.isMicrosoft=true; document.write("你在使用微软浏览器"); }
</script>
===============================================================================================================

解决方案 »

  1.   

    navigator.appName.indexOf("Netscape")
    这句在IE和firefox下返回来的值不同
    IE 是-1 Firefox是0
    所有你那样判断是不可以的
      

  2.   

    //如果navigator.appName="Netscape";
    if(navigator.appName.indexOf("Netscape"))相当于
    if(0){
    //不会执行到这里
    };
      

  3.   


    想请教一下,既然:
    if(navigator.appName.indexOf("Netscape"))
    if(navigator.appName.indexOf("Microsoft"))

    在火狐下面都是返回O,为什么会输出“你在使用微软浏览器”??
    在IE下面都是返回-1,为什么会输出“你在使用火狐浏览器”??