微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-如何在不使用modernizr的情况下用边界半径的特征检测检查替换旧的浏览器检查?

我一直在使用以下代码

if (
    ($.browser.msie && parseFloat($.browser.version) < 7) ||        // IE 6 and lower
    ($.browser.mozilla && parseFloat($.browser.version) < 1.9) ||   // Firefox 2 and lower
    ($.browser.opera && parseFloat($.browser.version) < 9) ||       // Opera 8 and lower
    ($.browser.webkit && parseInt($.browser.version) < 400)             // Older Chrome and Safari
) {
    // document.location.href = 'old-browsers.html?redirect=' + escape(document.location.href);
}

但这似乎不适用于Chrome.现在,我想使用特征检测将其替换为一些代码.我当时在看modernizr,但这似乎只是向我的html添加一个类,并且即使为此检查也创建了很多javascript.

有没有一种简单的方法可以检查我的浏览器是否支持CSS HTML5 border-radius属性

解决方法:

只需测试元素的样式属性中是否存在borderRadius属性(使用CSS属性的JavaScript命名约定),例如条件

'borderRadius' in document.body.style

这是@Ohgodwhy答案中代码的简化版本.

请注意,这将对属性border-radius执行所要求的确切检查. @thecodeparadox的答案以及其他类似问题的其他答案,也要测试供应商前缀的名称,这可能是您想要的,也可能不是您想要的(取决于代码是否也使用它们).

这仅测试浏览器是否可以识别该属性.该实现可能仍然被破坏或不完整.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐