Salut,
je vais commencer par te dire que la détectionde navigateur, ça ne se fait plus trop aujourd'hui. Il vaut mieux – comme l'a dit Bovino – tenter de détecter les fonctionnalités que tu souhaites utiliser, et agir en fonction de leur présence ou de leur absence.
Une chose à savoir, c'est que les navigateurs trichent. Ils essayent de se montrer plus beaux qu'ils ne le sont réellement. Par exemple, Internet Explorer a voulu se faire passer pour Mozilla à une époque, et depuis il présente "Mozilla/5.0" au début de sa UAS (User-Agent String). Ça remonte à loin, et pour rester rétro-compatible, les UAS gardent les vieilles mentions et deviennent de plus en plus longues. Et donc, de plus en plus fastidieuses à analyser.
Dis-toi aussi que l'utilisateur peut modifier les informations de son navigateur s'il le souhaite. Par exemple avec l'addon User-Agent Switcher, et je suis convaincu que de tels outils existent pour à peu près tous les navigateurs.
Ceci étant dit, si tu souhaites « détecter » (en gardant à l'esprit l'incertitude de cette information) la version de Firefox, il suffit de chercher "Firefox/" dans la UAS, le numéro de version est juste après. Par exemple, moi j'ai ça :
"Mozilla/5.0 (Windows NT 5.1; rv:25.0) Gecko/20100101 Firefox/25.0"
Tu peux capturer le numéro avec une regexp, par exemple :
navigator.userAgent.match(/Firefox\/([\d.]+)/)
Partager