navigator對象
navigator
navigator物件表示瀏覽器的訊息,最常用的屬性包括:
navigator.appName:瀏覽器名稱;
navigator.appVersion:瀏覽器版本;
#navigator.language:瀏覽器設定的語言;
<html> <head> <script> 'use strict'; alert('appName = ' + navigator.appName + '\n' + 'appVersion = ' + navigator.appVersion + '\n' + 'language = ' + navigator.language + '\n' + 'platform = ' + navigator.platform + '\n' + 'userAgent = ' + navigator.userAgent); </script> </head> <body> </body> </html>###請注意,navigator的資訊可以很容易地被使用者修改,所以JavaScript讀取的值不一定是正確的。很多初學者為了針對不同瀏覽器寫不同的程式碼,喜歡用if判斷瀏覽器版本,例如:################var width;###
if (getIEVersion(navigator.userAgent) < 9) { width = document.body.clientWidth; } else { width = window.innerWidth; }###但這樣既可能判斷不準確,也很難維護程式碼。正確的方法是充分利用JavaScript對不存在屬性傳回undefined的特性,直接用短路運算子||計算:###
var width = window.innerWidth || document.body.clientWidth;