DÉTECTER NAVIGATEUR

kiki2sirom Messages postés 153 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 23 décembre 2010 - 3 janv. 2007 à 15:46
goast_tu Messages postés 212 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 28 mai 2011 - 19 sept. 2007 à 13:10
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/40950-detecter-navigateur

goast_tu Messages postés 212 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 28 mai 2011 2
19 sept. 2007 à 13:10
c'est sur qu'il n'y a pas beaucoup de gens qui se sert de ce genre de plug-in mais ca permet de tremper le site pour acceder dans des sonnes qui etaient prevu que pour IE par contre avec une detection par userAgent il y a des plantages de scriptes. C'est pour quoi detecter les objets dispo en javaScript est plus sur.
cs_Yxion Messages postés 219 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 7 septembre 2009
18 sept. 2007 à 22:05
Pis alors ?
Moi je vais m'ammuser à développer un add-in pour IE qui va "tremper ce script". C'est quoi l'intérêt d'aller chercher des add-in qui font ce genre de boulot.
Pis s'il faut se référer à chaque add-in de chaque navigateur, on en fini plus.
Le seul défaut de ce script, c'est de ne pas prendre Safari, maintenant que je l'ai, je me suis ajouté.
C'est un exemple de code, pas une solution toute faite, post quelque chose qui marchera aujourd'hui sur toutes les sortes de naviagteurs et qui dure 1 ans...
goast_tu Messages postés 212 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 28 mai 2011 2
18 sept. 2007 à 21:43
il y a un petit probleme avec ce code. il existe des plug-ins de mozilla pour tremper le script et renvoyer un UserAgent different. Donc pour etre pls rigoureu il est plus correct de tester une par une les fonctions qu'on veut utiliser
Lineplus Messages postés 9 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 15 mai 2007
19 mars 2007 à 19:36
document.write(navigateur);
if(navigator.userAgent.indexOf("MSIE 7") != -1)
var navigateur="Internet explorer";
else if(navigator.userAgent.indexOf("MSIE 6") != -1)
var navigateur="Internet explorer";
else if(navigator.userAgent.indexOf("Firefox/2") != -1)
var navigateur="Firefox";
else if(navigator.userAgent.indexOf("Firefox") != -1)
var navigateur="Firefox";
else if(navigator.userAgent.indexOf("Netscape/7") != -1)
var navigateur="Netscape";
else if(navigator.userAgent.indexOf("Netscape") != -1)
var navigateur="Netscape";
else if(navigator.userAgent.indexOf("Opera/9") != -1)
var navigateur="Opera";
else if(navigator.userAgent.indexOf("Opera") != -1)
var navigateur="Opera";
else
var navigateur="?";


j'ai très légèrement modifié le code et il me met undefined...
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
3 janv. 2007 à 19:36
Bonjour et bonne Année à tous
On peut faire plus compliqué aussi, mais plus complet si nécéssaire, à voir sur...
http://www.quirksmode.org/js/detect.html
c'est en anglais mais bon...Have a Good Year donc...
cs_Yxion Messages postés 219 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 7 septembre 2009
3 janv. 2007 à 19:25
Très juste.
J'ai simplement voulu m'assurer que les infos recherchées soit chercher au bon endroit de la chaine vu que je peux tester que sur IE6 et 7, firefox 2, netscape 7 et opera 9, et que même si l'ordre des vérifs fait que ca marche très comme ca, je suis plus sur du résultat comme ca (la chaine de IE contient "Mozilla", celle de firefox contient netscape, je m'attends à un peu tous sur les navigateurs que je ne connais pas)
Et même en réduisant la zone de recherche de cette façon, si une vieille chaine de netscape contenait (supposition biensur) par exemple le nom du navigateur par défaut (IE par exemple), on aurai quand même une erreur.
kiki2sirom Messages postés 153 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 23 décembre 2010
3 janv. 2007 à 15:46
'lut

Je pense que tu te compliques un peu la vie là non ?

Tu aurais pu faire directement comme ça :
if(navigator.userAgent.indexOf("MSIE 7") != -1)
IE7 = true;
else if(navigator.userAgent.indexOf("MSIE 6") != -1)
IE6 = true;
else if(navigator.userAgent.indexOf("Firefox/2") != -1)
FIREFOX2 = true;
else if(navigator.userAgent.indexOf("Firefox") != -1)
FIREFOX = true;
else if(navigator.userAgent.indexOf("Netscape/7") != -1)
NETSCAPE7 = true;
else if(navigator.userAgent.indexOf("Netscape") != -1)
NETSCAPE = true;
else if(navigator.userAgent.indexOf("Opera/9") != -1)
OPERA9 = true;
else if(navigator.userAgent.indexOf("Opera") != -1)
OPERA = true;
else
AUTRE = true;

sans utiliser tes variables str

A+ et bonne prog'

kiki
Rejoignez-nous