我有2段代码用于IE和其他(Chrome,FF)。
我正在使用IE8,它正在<!--[if IE]>... <![endif]-->
之外停留,里面的任何功能......都不起作用。然而,它正在<!--[if !IE]><!-->....<!--<![endif]-->
内部进行,我不希望它经历。 (我还尝试了一些更多的语法,例如<!-- [if !IE] -->...<!-- [endif] -->
但似乎没有被忽略!)。
我不确定<meta>
标签是否会导致问题。请看一下。
<head>
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"/>
<meta content="no-cache; post-check=0; pre-check=0" http-equiv="Cache-Control"/>
<meta content="no-cache" http-equiv="Pragma"/>
<meta content="Thu, 01 Dec 1994 16:00:00 GMT" http-equiv="Expires"/>
<!--[if IE]>
<script>
$(document).ready(function() {
$(".exportExcel").click(function(e) {
e.stopPropagation();
var table = $("." + $(this).data('target'));
var strCopy = $('<div></div>').html(table.clone()).html(); window.clipboardData.setData("Text", strCopy);
var objExcel = new ActiveXObject("Excel.Application");
objExcel.visible = false;
var objWorkbook = objExcel.Workbooks.Add;
var objWorksheet = objWorkbook.Worksheets(1);
objWorksheet.Paste;
objExcel.visible = true;
});
});
</script>
<![endif]-->
<!--[if !IE]><!-->
<script>
$(document).ready(
function()
{
$(".exportExcel").click(function(e) {
e.stopPropagation();
var table = $("." + $(this).data('target'));
window.open('data:application/vnd.ms-excel,' + $(table).html());
e.preventDefault();
});
}
);
</script>
<!--<![endif]-->
答案 0 :(得分:0)
在IE8中关闭兼容模式,然后尝试。它可能只适用于标准和怪癖模式。
您是否尝试过添加元标记<meta http-equiv="X-UA-Compatible" content="IE=edge">
这些是我们页面上的所有标签,它可以正常工作
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
答案 1 :(得分:-1)
IE中不再支持IE条件,截至10
https://msdn.microsoft.com/en-us/library/ie/hh801214(v=vs.85).aspx
答案 2 :(得分:-1)
如果它只是JavaScript,那么您可以检查浏览器版本并根据浏览器运行不同的功能。
<script>
$(document).ready(navigator.appName == 'Microsoft Internet Explorer' ?
function(){ /* IE code */ } :
function(){ /* Non-IE code */ });
</script>
检测IE的其他方法:
console.log($.browser.msie);
console.log('ActiveXObject' in window);
console.log(!!window.navigator.userAgent.match(/(MSIE |Trident\/)\d+/));