javascript - 如何使用条件注释在 JS 脚本之间互换

标签 javascript html conditional-comments

所以我有一个弹出窗口,通过“?”从我的主页打开关联。如果用户使用 chrome、FF、Opera 等,我想运行一个脚本 (Help.htm),如果用户使用 IE,我想运行第二个脚本 (Help_IE.htm)。

js

 <script type="text/javascript">
            function popup() {
                window.open("Help.htm", "Help", "scrollbar=yes,location=yes,width=500,height=420");
            }
        </script>

html

    <a href="javascript:popup()">?</a>

我希望能够使用条件注释根据浏览器交换 JS 脚本,或者如果有人有更有效的答案,我愿意接受任何事情,谢谢。

尝试

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
<!--[if IE]>
    <script type="text/javascript">
    function popup() {
        window.open("Help_IE.htm", "Help", "scrollbar=yes,location=yes,width=500,height=420");
    }
    </script>
<![endif]-->

<script type="text/javascript">
    function popup() {
        window.open("Help.htm", "Help", "scrollbar=yes,location=yes,width=500,height=420");
    }
</script>

最佳答案

如果您知道如何使用您正在使用的浏览器查询变量,则可以在函数中使用条件 if(为此您可以使用 modernizer 之类的东西);

但在您的情况下,您也可以尝试将脚本包装在 html conditionals 中(就像您使用 CSS 一样——它应该可以工作);

例如。即:

 <!--[if IE]>
 <script type="text/javascript">
        function popup() {
            window.open("Help.htm", "Help", "scrollbar=yes,location=yes,width=500,height=420");
        }
       </script>
  <![endif]-->

对于非 IE:

 <!--[if !IE]>
 <script type="text/javascript">
        function popup() {
            window.open("Help.htm", "Help", "scrollbar=yes,location=yes,width=500,height=420");
        }
     </script>
 <![endif]-->

关于javascript - 如何使用条件注释在 JS 脚本之间互换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30099152/

相关文章:

javascript - Ajax.updater 的参数

javascript - AngularJS 高级缓存技术

javascript - 如何检查到期日期是否不到一个月?

HTML/CSS。如何根据列数据类型对 TD 进行样式化

javascript - 动态 html 表单值未存储在数据库中

javascript - 无法在 IE11 中点击以下图片触发事件

javascript - 如何将日期转换为时间

html - 为什么在 IE 中实现条件注释?

html - IE9 圆 Angular 和 CSS 背景渐变共存?

javascript - 是否可以在 CSS 或 JavaScript 中以 Windows 8 模式定位 IE10?