javascript - 如果浏览器是Internet Explorer,如何避免某些JavaScript代码被执行?

标签 javascript jquery internet-explorer-8 opacity

我有一些 JavaScript 代码

  var href = "demo.php";
    if(href)
    { 
        if($("#opacity")){
            $("#opacity").css({
                opacity: 0.5
            });
        }
        if (document.getElementById("layer")) {
            var ele = document.getElementById("layer");
            ele.style.display = "block";
        }
  }

我想避免这些代码

  if($("#opacity")){
            $("#opacity").css({
                opacity: 0.5
            });
        }

如果浏览器是IE8,则无法执行..请帮忙。 。 .

最佳答案

您可以使用jQuery.browser ,检测浏览器是否是 IE8,但这被认为是一个不好的做法:

if ($.browser.msie && $.browser.version.substr(0,1) == 8)) {
  // ...
}

您应该使用jQuery.support来代替这个,它会告诉您是否可以使用opacity:

opacity is equal to true if a browser can properly interpret the opacity style property. (It is currently false in IE, it uses alpha filters instead). CSS3 spec

if (!$.support.opacity) {
  // ...
}

关于javascript - 如果浏览器是Internet Explorer,如何避免某些JavaScript代码被执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8847442/

相关文章:

javascript - 我应该使用 addEventListener

javascript - 将文本框值和复选框值附加到字符串

javascript - 如何仅使用 javascript 在短时间内更改按钮文本?

jquery - 防止照片滑动隐藏工具栏

html - 在 IE8 上具有列跨越的固定大小表

javascript - "elem[ type ]();"行的 IE8 jQuery 错误

javascript - 切换播放/暂停以响应音频

javascript - 第一次渲染时数据返回为未定义

javascript - 在 chrome 开发者控制台隐藏 http 状态代码警告

asp.net - IE8 后退按钮在 ASP .NET 页面上停止工作