2009年1月11日

navigator 一頁

一頁 | 二頁 | 三頁
navigator 物件

navigator 是 window 的特徵,可以用 window.navigator;也可以省略 window,直接用 navigator。

  • 程式用法:

    <ol>
    <script type='text/javascript'>
    for( k in navigator )
      document.write( '<li>'+ k +' : '+ navigator[k] );
    </script>
    </ol>

  • 執行結果:

    1. vendorSub :
    2. productSub : 20030107
    3. vendor : Google Inc.
    4. maxTouchPoints : 0
    5. scheduling : [object Scheduling]
    6. userActivation : [object UserActivation]
    7. doNotTrack : null
    8. geolocation : [object Geolocation]
    9. connection : [object NetworkInformation]
    10. plugins : [object PluginArray]
    11. mimeTypes : [object MimeTypeArray]
    12. pdfViewerEnabled : false
    13. webkitTemporaryStorage : [object DeprecatedStorageQuota]
    14. webkitPersistentStorage : [object DeprecatedStorageQuota]
    15. windowControlsOverlay : [object WindowControlsOverlay]
    16. hardwareConcurrency : 64
    17. cookieEnabled : true
    18. appCodeName : Mozilla
    19. appName : Netscape
    20. appVersion : 5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
    21. platform : Linux x86_64
    22. product : Gecko
    23. userAgent : Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
    24. language : en-US
    25. languages : en-US
    26. onLine : true
    27. webdriver : true
    28. getGamepads : function getGamepads() { [native code] }
    29. javaEnabled : function javaEnabled() { [native code] }
    30. sendBeacon : function sendBeacon() { [native code] }
    31. vibrate : function vibrate() { [native code] }
    32. ink : [object Ink]
    33. mediaCapabilities : [object MediaCapabilities]
    34. mediaSession : [object MediaSession]
    35. permissions : [object Permissions]
  • 上面列出 navigator 的成員,不同瀏覽器會有差異。
navigator 的特徵
appCodeName

存有當下瀏覽器的內部編碼名稱。

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.appCodeName );
    </script>

  • 執行結果:

    Mozilla

  • IE, Firefox, Safari, Chrome 都顯示 ”Mozilla”。
appName

存有瀏覽器的正式名稱。

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.appName );
    </script>

  • 執行結果:

    Netscape

  • IE 顯示 ”Microsoft Internet Explorer”;Firefox, Safari, Chrome 都顯示 ”Netscape”。
appVersion

存有瀏覽器的版本字串。

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.appVersion );
    </script>

  • 執行結果:

    5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)

  • 各個瀏覽器的輸出都不同。
buildID

存有瀏覽器的識別名。限 Firefox 使用。

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.buildID );
    </script>

  • 執行結果:

    undefined

cookieEnabled

存有一個布林值,表示瀏覽器的 cookie 是否啟動?

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.cookieEnabled );
    </script>

  • 執行結果:

    true

language
systemLanguage
userLanguage

存有瀏覽器的語言版本字串。IE 使用 systemLanguage, userLanguage;Firefox, Safari, Chrome 使用 language。

  • 程式用法:

    <script type='text/javascript'>
    if( navigator.appName == 'Netscape' )
      document.write( navigator.language );
    else
      document.write( navigator.systemLanguage
         +'<br />'+  navigator.userLanguage );
    </script>

  • 執行結果:

    en-US

mimeTypes

存放一個清單,內有瀏覽器支援的 MIME 型態。MimeType 物件的成員有:description, enabledPlugin, suffixes, type。

  • 程式用法:

    <script type='text/javascript'>
    document.write( navigator.mimeTypes.length +'<br />');
    document.write( navigator.mimeTypes +'<br />');
    for(k in navigator.mimeTypes[0] )
      document.write( k +' : '+ navigator.mimeTypes[0][k] +'<br />');
    </script>

  • 執行結果:

    0
    [object MimeTypeArray]

  • IE 無此項;Firefox, Safari, Chrome 都有支援,但是輸出不同。

©2008-2009 by ant2legs, All Rights Reserved. ant2legs 擁有其製作的文章,圖片與程式的著作權,所有權利保留。