我想暂时从我的typo3 html 文件的特定部分中排除所有版本的Internet Explorer (IE)。我尝试这样注释掉它:
<!--[if !IE]> -->
<p>Some content here</p>
<!-- <![endif]-->
这个方法行不通。
有人有解决这个问题的办法吗?
梦里花落0921
浏览 86回答 1
1回答
慕码人8056858
条件注释()<!--[if !IE]> -->已在 Internet Explorer 10 中删除,因此仅适用于 IE9 之前的版本。要使用 JavaScript 检测所有 IE 版本,我建议您可以检查userAgent字符串。在IE 9版本下,您可以使用条件注释来控制注释,对于IE 9+版本,您可以使用JavaScript来隐藏注释。请检查以下示例:<!--[if !IE]> --><p id="iecontent">Some IE content here</p><!-- <![endif]--><script> //userAgent in IE7 WinXP returns: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727) //userAgent in IE11 Win7 returns: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko if (navigator.userAgent.indexOf('MSIE') != -1) var detectIEregexp = /MSIE (\d+\.\d+);/ //test for MSIE x.x else // if no "MSIE" string in userAgent var detectIEregexp = /Trident.*rv[ :]*(\d+\.\d+)/ //test for rv:x.x or rv x.x where Trident string exists if (detectIEregexp.test(navigator.userAgent)) { //if some form of IE var ieversion = new Number(RegExp.$1) // capture x.x portion and store as a number //define a flag to check whether IE version is IE 9+ var flag = false; if (ieversion >= 12) { document.write("You're using IE12 or above"); flag = true; } else if (ieversion >= 11) { document.write("You're using IE11 or above") flag = true; } else if (ieversion >= 10) { document.write("You're using IE10 or above") flag = true; } else if (ieversion >= 9) document.write("You're using IE9 or above") else if (ieversion >= 8) document.write("You're using IE8 or above") else if (ieversion >= 7) document.write("You're using IE7.x") else if (ieversion >= 6) document.write("You're using IE6.x") else if (ieversion >= 5) document.write("You're using IE5.x") if (flag) document.getElementById("iecontent").style.display = "none"; } else { document.write("n/a") }</script>