Skip to main content

Bug Tracker

Side navigation

#4566 closed bug (wontfix)

Opened April 21, 2009 02:43PM UTC

Closed November 20, 2010 10:57PM UTC

Last modified July 20, 2011 11:42AM UTC

Change method of returning IE version number for IE8 compatibility view

Reported by: didroe Owned by:
Priority: major Milestone: 1.4
Component: support Version: 1.3.2
Keywords: Cc:
Blocked by: Blocking:

$.browser.version returns the version of the browser as reported in the user agent. This causes problems with IE8's compatibility view "feature" (/disaster). The user agent in IE8 is not 100% related to the X-UA-Compatible header or the browser's actual version. It is possible for the browser to be in IE8 rendering mode whilst reporting its version as 7 or be in IE7 mode and report the version as 8. As certain features are removed in IE8 (such as CSS expressions) which affect Javascript, the version returned from jQuery should reflect the effective browser version.

The solution to this is to check for the document.documentMode property and return that value as the browser version if it is defined.

Attachments (0)
Change History (3)

Changed June 12, 2010 06:23PM UTC by dmethvin comment:1

component: unfiledsupport

Changed November 20, 2010 10:57PM UTC by snover comment:2

resolution: → wontfix
status: newclosed

$.browser.version is the wrong way to do things, and is deprecated. Use feature inference, conditional comments, or access documentMode directly if you absolutely must.

Changed July 20, 2011 11:42AM UTC by anonymous comment:3

Maybe it is a wrong way, but it is the only (?) way to quickly fix all the code that relays on $.browser.version.