嗅探Firefox 4及更高版本的方法

时间:2011-08-25 18:05:04

标签: javascript firefox4 browser-detection

我正在编写一个必须检查Firefox 4或更高版本的JavaScript库。相信我,我需要。

我计划使用以下嗅探代码:

if ('MozAppearance' in document.documentElement.style) {

    //We have Mozilla

    if (!!window.FormData) {

        //We have Firefox4+

    }
}

我对此感到满意,因为对我来说似乎不太可能会添加全局FormData方法。

假设我对任何浏览器嗅探方法的常见风险感到满意,你能看到任何问题吗?

Firefox中window.FormData的文档在这里:

https://developer.mozilla.org/en/DOM/XMLHttpRequest/FormData

谢谢!

3 个答案:

答案 0 :(得分:0)

由您来决定这是否是合理的功能检测。如果您认为对FormData的存在进行测试就足够了;然后继续。

您也可以“增加”您检查的功能。您还可以查找window.URLnew feature in Firefox 4

if (!!window.FormData && !!window.URL) {

    //We have Firefox4+

}

所以现在你有人宣称​​两个的几率更低。如果您信任您的用户足以不更改它们,您也可以让用户代理也参与进来。

答案 1 :(得分:0)

window.history.pushState是您可以检查的另一个。 我想我们可以整天使用FF4 +但不是FF3.x中的功能来完成这项工作。

答案 2 :(得分:0)

  

假设我对任何与之相关的通常风险感到满意   浏览器嗅探方法,你能看到任何问题吗?

它会打破他们放弃前缀的那一刻 所有-moz- properties标记的过时都证明了这一事实 因此,请记住,您必须使用||不断添加最新的Mozilla扩展程序。