#4566 closed bug (wontfix)
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: |
Description
$.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.
Change History (3)
comment:1 Changed 13 years ago by
Component: | unfiled → support |
---|
comment:2 Changed 12 years ago by
Resolution: | → wontfix |
---|---|
Status: | new → closed |
comment:3 Changed 12 years ago by
Maybe it is a wrong way, but it is the only (?) way to quickly fix all the code that relays on $.browser.version.
$.browser.version
is the wrong way to do things, and is deprecated. Use feature inference, conditional comments, or accessdocumentMode
directly if you absolutely must.