Javascript 仅在Internet Explorer中显示Div(所有版本)
随着Internet Explorer停止使用条件语句,我对如何将元素或样式单独应用于IE感到困惑。这不再适用于IE10:Javascript 仅在Internet Explorer中显示Div(所有版本),javascript,jquery,html,css,Javascript,Jquery,Html,Css,随着Internet Explorer停止使用条件语句,我对如何将元素或样式单独应用于IE感到困惑。这不再适用于IE10: <!--[if IE]> <![endif]--> 下面是一个蓝色和红色的框: 如何使蓝色框仅出现在Internet Explorer(所有版本)中?您可以使用jQuery来实现这一点,不要忘记也包括: 使用Javascript,您可以使用仅在IE中可用的条件编译: if (Function('/*@cc_on return true@*/')
<!--[if IE]>
<![endif]-->
下面是一个蓝色和红色的框:
如何使蓝色框仅出现在Internet Explorer(所有版本)中?您可以使用jQuery来实现这一点,不要忘记也包括:
使用Javascript,您可以使用仅在IE中可用的条件编译:
if (Function('/*@cc_on return true@*/')()) {
// Is IE
}
从此处修改:
因此,使用它的方式如下:
var isIE = false;
if (Function('/*@cc_on return true@*/')()) {
isIE = true;
// or
document.documentElement.className += " isIE";
}
这将在Javascript中设置一个布尔值,并且/或者还将一个isIE
类添加到
元素中…该元素将是
。这意味着您可以在JavaScript中检查布尔值isIE
,或者根据类设置样式,例如:
html.isIE body {
color: #111; /* Only applied for IE*/
}
这使用功能检测(某种类型),而不使用userAgent
嗅探<代码>用户代理
嗅探是一个选项,但不可靠,在现代jQuery中已被弃用/删除
关于条件编译的更多信息:和检查useragent。这样做的目的是什么?你只是不支持IE的任何形状或方式吗?更重要的问题是,为什么你需要基于浏览器显示额外的元素?@KevinB你看到泄漏的IE11使用了“Mozilla,…像Gecko”字符串吗?和-条件编译仍然可以在IE10@KevinB-如果您勾选“迁移1.1.0”复选框@KevinB,则该选项似乎有效。您最初的反对意见是该选项无效。@MartinSmith他的原始反对意见没有指定正在使用的“迁移”插件。“迁移”插件不应该在生产中使用,也不应该计划在将来的版本中使用。是的,在当前版本中,它不起作用。您必须添加额外的代码/文件才能正常工作。这就像说jQuery库附带了一个cycle小部件,因为插件存在。@Will.i.am-这并不意味着它没有被编辑。在5分钟的宽限期内,您是否将其作为事后考虑添加进来?我看到的版本提到了这一点,但凯文的评论比我的评论早了2分钟。
html.isIE body {
color: #111; /* Only applied for IE*/
}