Sorry to re-open this, but if the browser happens to be in a compatibility view, this check will not be sufficient. For instance, the page itself could opt to set the Doc Mode to IE9 with the following:

<meta http-equiv="X-UA-Compatible" content="IE=9"/>

So if the browser is in a compatibility view (say IE7 because it is hosted on an intranet webserver) and the page specifies the above, the Doc Mode will be IE9 Standards, but the User-Agent will still be IE7.

This will cause jQuery.browser.version to be set to 7, even though the page does support standard mouse events. A correct check would also consider document.documentMode before assuming the browser is IE7.

My apologies if this is something that needs to be fixed where jQuery.browser.version is populated rather than here.

Sorry to re-open this, but if the browser happens to be in a compatibility view, this check will not be sufficient. For instance, the page itself could opt to set the Doc Mode to IE9 with the following:

<meta http-equiv="X-UA-Compatible" content="IE=9"/>

So if the browser is in a compatibility view (say IE7 because it is hosted on an intranet webserver) and the page specifies the above, the Doc Mode will be IE9 Standards, but the User-Agent will still be IE7.

This will cause jQuery.browser.version to be set to 7, even though the page does support standard mouse events. A correct check would also consider document.documentMode before assuming the browser is IE7.

My apologies if this is something that needs to be fixed where jQuery.browser.version is populated rather than here.