IE10 User Agent String Update

IEBlog

Windows Internet Explorer Engineering Team Blog

IE10 User Agent String Update

  • Comments 70

The IE10 user agent string was originally introduced in the first platform preview of IE10. In Windows 8 Release Preview we made two additions to aid server-side feature detection.

The first addition enables detecting whether a machine has touch-capable hardware via a new Touch token. Using this token you can present a touch-friendly version of your site to users with touch-capable hardware (typically, in the case where your normal site is not touch-friendly). Keep in mind that users with touch-capable hardware may also use a mouse and keyboard. You can see where this token fits into the user agent string in the examples below.

  • IE10 on a machine without touch-capable hardware:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)
  • IE10 on a machine with touch-capable hardware:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0; Touch)

If you're detecting touch support client-side, do not sniff the user agent string; use navigator.msMaxTouchPoints instead. If the property exists and returns a value greater than zero, the user’s PC has touch capability. For example:

var hasTouch = navigator.msMaxTouchPoints > 0;

The second addition to the IE10 user agent string is a new architecture token for ARM devices running Windows RT. This complements the existing values for other architectures. The examples below show how this compares to a few other configurations.

  • 32-bit IE10 on 32-bit Windows:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)
  • 32-bit IE10 on 64-bit Windows:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
  • 64-bit IE10 on 64-bit Windows:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)
  • IE10 on Windows RT:
    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; ARM; Trident/6.0)

These additions apply to both desktop and Metro style IE10 since they expose the same platform capabilities. We recommend optimizing your site’s experience around the capabilities of the system (like Touch) through feature detection, rather than browser or environment detection. Where content depends on plug-ins, use the requiresActiveX prompt to help users switch to desktop IE10 until the content can be made plug-in free.

—Tony Ross, Program Manager, Internet Explorer

  • Loading...