JS判斷當前是哪個瀏覽器

最近一直接觸底層代碼,測試中發現IE瀏覽器以前判斷的方法行不通了。

上例子吧:

var explorer =navigator.userAgent;
    //ie 
    if (explorer.indexOf("MSIE") >= 0) {
    alert("ie");
    }
    //firefox 
    else if (explorer.indexOf("Firefox") >= 0) {
    alert("Firefox");
    }
    //Chrome
    else if(explorer.indexOf("Chrome") >= 0){
    alert("Chrome");
    }
    //Opera
    else if(explorer.indexOf("Opera") >= 0){
    alert("Opera");
    }
    //Safari
    else if(explorer.indexOf("Safari") >= 0){
    alert("Safari");
    } 
    //Netscape
    else if(explorer.indexOf("Netscape")>= 0) { 
    alert('Netscape'); 
    }

這個上面都是可以行得通,但是IE11的判斷就出現問題,因爲IE11不存在MSIE,新增加了trident

對IE的判斷修改一下:

方法一:
 

    //ie 
    //判斷瀏覽器是否支持ActiveX控件,如果瀏覽器支持ActiveX控件可以利用,
    if (!!window.ActiveXObject || "ActiveXObject" in window){
        alert("IE")
    }

方法二:

    //ie 
    //documentMode 是一個IE的私有屬性,在IE8+中被支持。
    if (window.document.documentMode){
        alert("IE")
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章