JS Window Navigator
阿新 • • 發佈:2022-05-09
宣告
該文部分程式碼和內容節選自菜鳥教程,僅用作個人學習,特此宣告
Window Navigator
window.navigator
物件包含有關訪問者瀏覽器的資訊。
1、Navigator
window.navigator
物件在編寫時可不使用 window 這個字首。
div id="example"></div> txt = "<p>瀏覽器代號: " + navigator.appCodeName + "</p>"; //瀏覽器代號: Mozilla txt+= "<p>瀏覽器名稱: " + navigator.appName + "</p>"; //瀏覽器名稱: Netscape txt+= "<p>瀏覽器版本: " + navigator.appVersion + "</p>"; //瀏覽器版本: 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36 Edg/101.0.1210.39 txt+= "<p>啟用Cookies: " + navigator.cookieEnabled + "</p>"; //啟用Cookies: true txt+= "<p>硬體平臺: " + navigator.platform + "</p>"; //硬體平臺: Win32 txt+= "<p>使用者代理: " + navigator.userAgent + "</p>"; //使用者代理: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36 Edg/101.0.1210.39 txt+= "<p>使用者代理語言: " + navigator.language + "</p>"; //使用者代理語言: zh-CN document.getElementById("example").innerHTML=txt;
2、警告!!!
來自 navigator 物件的資訊具有誤導性,不應該被用於檢測瀏覽器版本,這是因為:
- navigator 資料可被瀏覽器使用者更改
- 一些瀏覽器對測試站點會識別錯誤
- 瀏覽器無法報告晚於瀏覽器釋出的新作業系統
3、瀏覽器檢測正確方式
由於 navigator 可誤導瀏覽器檢測,使用物件檢測可用來嗅探不同的瀏覽器。
由於不同的瀏覽器支援不同的物件,您可以使用物件來檢測瀏覽器。例如,由於只有 Opera 支援屬性 window.opera
,您可以據此識別出 Opera。
例如:if (window.opera) {...some action...}