如果IE条件不;t工作
if IE Condition Doesn't Work
我有两段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]-->
关闭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]-->
如果只是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+/));
https://msdn.microsoft.com/en-us/library/ie/hh801214(v=vs.85).aspx
相关文章:
- 为什么这在IE中的工作方式与在Firefox中不同
- 点击选择Div不在IE上工作
- 如何编写在Chrome和IE中正常工作的JavaScript
- Target=_blank don'我不在mozilla和IE工作
- 如何隐藏空<span>在IE中使用javascript.(注意,在其他浏览器中工作正常)
- 读取在具有IE的工作程序中生成的对象URL
- Json到CSV下载,可以在chrome中工作,但不能在IE浏览器中工作
- jQUery Code没有'我不在IE工作
- 为什么这个书签脚本是't在IE工作
- 类构造函数super()没有'我不在IE工作
- JavaScript onclick在IE 9中工作两次,然后停止
- HTML5视频无法在chrome上工作,在服务器上托管后的IE,mov文件中的视频(quicktime格式)
- JSSOR转盘滑块在IE中不工作
- Iframe加载调整大小在Chrome中工作,但不能在IE或Firefox中工作
- onmousemove=null不会'我不在IE工作
- Javascript/AAJAX在Opera中不起作用,在FF/IE/Chrome中完美工作
- execCommand('另存为',true,'data.csv');不在IE工作
- 我的剧本赢了'不能在IE中工作(甚至9)?修改复制文本的简单javascript
- 纯Javascript: onClick切换行/图像:Firefox/Chrome -工作:IE -不工作
- jQuery菜单不工作ie(文档模式:怪癖)