2012-09-26 35 views
0

我想测试用户是否使用3.0版本的Firefox,如果是的话触发该功能,这就是我最终的结果!现在我使用Firefox的14.0版来测试它,它仍然会触发该功能!任何人都可以帮助初学者?谢谢!我的Firefox浏览器测试出了什么问题?

脚本:

if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits); 
var ffversion= Number(RegExp.$1) // capture x.x portion and store as a number 
if (ffversion<=3) 
{ 
+0

哦,你又来了! ...等等,你是谁? ':P' –

+0

哈哈我jsut问了javascript在10分钟前的问题,因为我找不到任何具体的答案,我很难找到答案,因为在新的JavaScript –

回答

2

你可以只是做一个正则表达式测试:

if(/Firefox[\/\s]([0-2]\.|3\.0)/g.test(navigator.userAgent)){ 
    // do old FF stuff 
} 
2

这里:

var result = /Firefox[\/\s](\d+\.\d+)/.exec(navigator.userAgent); 

if (result && +result[1] <= 3) { 
    // do your thing 
} 

注意,功能测试将做一个更好的解决方案:

if (browser_doesnt_implement_this_feature) { 
    implementIt(); 
} 
+0

它只是一个备份,以防某些人仍然使用一个真正的老式的Firefox浏览器,用PNG取代SVG ...我不想测试任何东西,只是检查你在哪个顶点,我认为它更轻。 –