-
-
Save jasongaylord/5733469 to your computer and use it in GitHub Desktop.
// Check to see if jQuery is loaded. If not, load it from the public jQuery CDN. | |
if (typeof jQuery == 'undefined') { | |
// Load the latest jQuery library from jQuery | |
document.write("\<script src='http://code.jquery.com/jquery-latest.min.js' type='text/javascript'>\<\/script>"); | |
} | |
// Create new ieUserAgent object | |
var ieUserAgent = { | |
init: function () { | |
// Get the user agent string | |
var ua = navigator.userAgent; | |
this.compatibilityMode = false; | |
// Detect whether or not the browser is IE | |
var ieRegex = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})"); | |
if (ieRegex.exec(ua) == null) | |
this.exception = "The user agent detected does not contai Internet Explorer."; | |
// Get the current "emulated" version of IE | |
this.renderVersion = parseFloat(RegExp.$1); | |
this.version = this.renderVersion; | |
// Check the browser version with the rest of the agent string to detect compatibility mode | |
if (ua.indexOf("Trident/6.0") > -1) { | |
if (ua.indexOf("MSIE 7.0") > -1) { | |
this.compatibilityMode = true; | |
this.version = 10; // IE 10 | |
} | |
} | |
else if (ua.indexOf("Trident/5.0") > -1) { | |
if (ua.indexOf("MSIE 7.0") > -1) { | |
this.compatibilityMode = true; | |
this.version = 9; // IE 9 | |
} | |
} | |
else if (ua.indexOf("Trident/4.0") > -1) { | |
if (ua.indexOf("MSIE 7.0") > -1) { | |
this.compatibilityMode = true; | |
this.version = 8; // IE 8 | |
} | |
} | |
else if (ua.indexOf("MSIE 7.0") > -1) | |
this.version = 7; // IE 7 | |
else | |
this.version = 6; // IE 6 | |
} | |
}; | |
// Initialize the ieUserAgent object | |
ieUserAgent.init(); |
<!DOCTYPE html> | |
<html xmlns="http://www.w3.org/1999/xhtml"> | |
<head> | |
<title>Testing IE Compatibility Mode</title> | |
<script src="ieUserAgent.js" type="text/javascript"></script> | |
</head> | |
<body> | |
<div id="results">Results:</div> | |
<script type="text/javascript"> | |
var val = "IE" + ieUserAgent.version; | |
if (ieUserAgent.compatibilityMode) | |
val += " Compatibility Mode (IE" + ieUserAgent.renderVersion + " emulation)"; | |
$("#results").html("We have detected the following IE browser: " + val); | |
</script> | |
</body> | |
</html> |
How about IE 11 since the user agent has been changed?
There is no MSIE and it shows something like Gecko.
How to detect whether its IE 11?
Check this link for IE11
https://groups.google.com/forum/#!msg/browscap/40-5XTokTjM/CoS_BbmUoeYJ
This reports IE11 as IE6 whether compatibility view is engaged or not.
If you just wanting to check if you are being run in compatibility mode you can use this script.
// Create new ieUserAgent object
var ieUserAgent = {
init: function () {
// Get the user agent string
var ua = navigator.userAgent;
this.compatibilityMode = false;
// alert (ua);
if(ua.indexOf("MSIE") == -1){
this.version = 0;
return 0;
}
if(ua.indexOf("compatible") == -1){
this.compatibilityMode = false;
return 0;
}else{
this.compatibilityMode = true;
return 0;
}
}
};
// Initialize the ieUserAgent object
ieUserAgent.init();
/**
* Check if client is IE and in compatibility view
*
* @returns {boolean}
*/
function isIECompatibilityMode() {
var ua = navigator.userAgent;
if (ua.indexOf("MSIE") == -1) {
return false;
}
return (ua.indexOf("compatible") != -1);
}
Hi Jason,
Actually I am looking out for how to add site URL/domain in IE compatibility Mode through JavaScript.
Or anyway to automate the process instead of manually adding URL entry in IE Compatibility View Settings.
~Thanks!
"The user agent detected does not contai Internet Explorer."; Missing 'n' on contain