IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Détection du navigateur (Firefox)


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 31
    Points
    31
    Par défaut Détection du navigateur (Firefox)
    Bonjour,

    Je veux faire quelque chose comme

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <html> 
     
    Si (navigateur est Firefox)
    <script type="text/javascript" src="/file1.js"> 
    Sinon
    <script type="text/javascript" src="/file2.js"> 
    </script> 
     
    <head> 
    ...

    Pourriez-vous m'aider ?
    Merci d'avance et bonne soirée !

  2. #2
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Bonjour

    Ce n'est strictement pas possible en HTML !

    C'est possible via un langage coté serveur ou alors via JavaScript http://javascript.developpez.com/faq...vig#navigateur.
    Vous souhaitez participer à la rubrique (X)HTML/CSS, contactez moi.
    débutez avec les CSS
    Pas de MP pour des questions techniques ! Mode d'emploi du forum ; Règles ; Pensez à la balise code ; Pas de SMS !
    Votez pour les messages qui vous ont aidés...

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 022
    Points : 44 339
    Points
    44 339
    Par défaut
    Bonjour,
    je ne pense pas que cela soit une bonne idée de vouloir inclure un fichier JS par navigateur, autant faire un code compatible, ce qui même si c'est un peu contraignant n'est somme toute plus franchement un soucis actuellement.

    Mais reste à savoir quelle idée tu as derrière la tête.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 31
    Points
    31
    Par défaut
    Bonjour,

    Merci de vos réponses.
    Ce sont deux fichiers de configuration d'un autre JavaScript.

    Je vais essayer de faire un code compatible, comme NoSmoking a dit, c'est peut-être mieux.

    Bonne journée !

  5. #5
    Membre averti
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Points : 337
    Points
    337
    Par défaut
    Salut, tu peux essayer d'adapter mon code pour ajouter tes scripts JS.
    Moi je m'en sert pour ajouter des feuilles de style.
    Ceci, a placer dans un fichier que tu nomme en .js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    function Navigateur(){
    	var IE = false;
    	var AUTRE = false;
    	var intSplitStart = navigator.userAgent.indexOf("(",0);
    	var intSplitEnd = navigator.userAgent.indexOf(")",0);
    	var strChStart = navigator.userAgent.substring(0,intSplitStart);
    	var strChMid = navigator.userAgent.substring(intSplitStart, intSplitEnd);
    	var strChEnd = navigator.userAgent.substring(strChEnd);
    	if ((strChMid.indexOf("MSIE 8") != -1) || (strChMid.indexOf("MSIE 7") != -1) || (strChMid.indexOf("MSIE 6") != -1)){
    		SetCss("css/StyleIE.css");
    	} else {
    		SetCss("css/Style.css");
    	}
    }
     
    function SetCss(Lien) {
    	var fileref=document.createElement("link");
    	fileref.setAttribute("rel", "stylesheet");
    	fileref.setAttribute("type", "text/css");
    	fileref.setAttribute("href", Lien);
    	document.getElementsByTagName("head")[0].appendChild(fileref);
    }
    Ensuite dans ton header de la page web tu place :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    window.onload = function() {Navigateur();}
    </script>
    Voilou bon courage.

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    En règle générale, filtrer des fonctionnalités par la détection du navigateur est une mauvaise pratique.
    En général, on préfèrera utiliser la détection de fonctionnalité.
    Un exemple classique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var xhr;
    if(document.all){    // méthode usuelle pour détecter IE
        xhr = new ActiveXObject("Msxml2.XMLHTTP");
    }
    else{
        xhr = new XMLHttpRequest();
    }
    Ici, deux problèmes se posent : document.all n'a jamais été "IE exclusive" : Opera depuis longtemps et maintenant Chrome et Safari reconnaissent cette immondice (troll inside ), mais seul IE sait instancier un activeX... c'est ballot.
    D'autre part, ça fait bien longtemps qu'IE implémente son objet XMLHttpRequest... pourquoi passer par une solution bancale ?

    Autres exemples, addEventListener(), getElementsByClassName(), etc. Ces méthodes sont inconnues de IE avant la version 9. Imaginons que votre code à 1 ou 2 ans.
    On teste si le navigateur, si c'est IE, on passe par des méthodes propres à ce navigateur... Sauf qu'aujourd'hui, ce n'est plus vrai. En testant la fonctionnalité, on anticipe mieux les évolutions futures des navigateurs non conformes
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Un petit complément d'information pour jojo86 concernant la detection d'IE.

    Avec IE, nous avons les commentaires conditionnels aussi pour Javascript.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /*@cc_on
     {ici code interprété par IE}
    @*/
    Ainsi avec le code
    IE voit
    Les autres voient

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Petite rectification de sémantique
    Avec IE, nous avons les commentaires conditionnels aussi pour Javascript.
    En fait, ici on parle de compilation conditionnelle.
    Je sais, ça fait un peu quadripilectomie*, mais c'est toujours plaisant à rappeler pour ceux qui croient (et il y en a ) que JavaScript n'est pas compilé !

    Mais sinon, oui, tu as raison, avec la capacité avec cette astuce de cibler sur le moteur JScript utiliser, qui est donc supposé définir les fonctionnalités disponibles

    * coupage de cheveux en quatre, petit curieux
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/05/2008, 19h08
  2. Détection de navigateur : IE6
    Par MANU_2 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 17/11/2007, 17h08
  3. Détection du navigateur du client
    Par amigo0 dans le forum Langage
    Réponses: 1
    Dernier message: 08/07/2007, 16h31
  4. détection touche clavier firefox 2: différente?
    Par popogendarme dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/03/2007, 19h57
  5. [FLASH MX2004] Probleme Avec Navigateur Firefox
    Par Garra dans le forum Flash
    Réponses: 2
    Dernier message: 23/06/2006, 16h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo