how to get compatible view status by javascript
我得到了一个网页,该网页在IE中具有兼容的视图模式。我将向用户显示其浏览器在兼容视图中的警报,以便对其进行修复。
我的问题是:是否可以通过Java脚本获取兼容的视图状态(打开或关闭)?
document.compatMode可用于检查兼容模式,并且显然可以跨浏览器运行(已通过IE,Chrome,Firefox验证):
例如,标准模式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <!DOCTYPE html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> window.onload = function() { var navigator = window.navigator; info.firstChild.data = "\ navigator.userAgent:" + navigator.userAgent + "\ document.compatMode:" + document.compatMode; } </head> <body> [cc lang="javascript"] |
body>
code> pre>
输出:
1 2 | navigator.userAgent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0) document.compatMode: CSS1Compat |
兼容模式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.0 Transitional//EN"""> <head> window.onload = function() { var navigator = window.navigator; info.firstChild.data = "\ navigator.userAgent:" + navigator.userAgent + "\ document.compatMode:" + document.compatMode; } </head> <body> [cc lang="javascript"] |
body>
code> pre>
输出:
1 2 | navigator.userAgent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0) document.compatMode: BackCompat |
1 | <meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" /> |
这将禁用兼容性视图