Question

Comment serait-il facile d'exécuter un javascript différent en fonction du navigateur de l'utilisateur?

Par exemple, si quelqu'un visite le site avec IE9 Je voudrais à exécuter un script différent de celui qu'il courrait normalement pour les utilisateurs de Chrome.

Était-ce utile?

La solution

Vous pouvez utiliser commentaires conditionnels ceci:

<!--[if lte IE 6]>
    <script>alert('lte stands for less than or equal to')</script>
<![endif]-->

<!--[if lt IE 7]>
    <script>alert('lt stands for less than')</script>
<![endif]-->

<!--[if gte IE 9]>
    <script>alert('gte stands for greater than or equal to')</script>
<![endif]-->

etc.

Autres conseils

Il existe différentes techniques de détection du navigateur. Vous pouvez détecter le navigateur (par vous-même en examinant la propriété navigator.userAgent) ou vous pouvez utiliser des méthodes disponibles dans presque tous les frameworks Javascript. Par exemple:

  1. jQuery.browser
  2. navigateur avec Prototype Detecting JS

Vous pouvez également utiliser commentaires conditionnels mais ils ne sont reconnus par IE.

- Pavel

Vous pouvez utiliser des commentaires conditionnels dans le code HTML.

<!--[if IE]>
   <script src="ie_only.js"></script>
<![endif]-->

Cela peut également être utilisé pour feuilles de style externes

plus d'informations sur ce poste http: // CSS- tricks.com/how-to-create-an-ie-only-stylesheet/

Puis-je recommander la détection de fonction à la place.

if (someIEAPI) {
    // ie code
} else if (someChromeAPI) {
    // chrome code
}

Ce code est plus robuste et si Firefox ou Opera prend en charge un d'entre vous de l'API n'avez pas de vérifier leurs navigateurs de toute façon.

En plus de navigateurs ont l'habitude de vous mentir et faire semblant d'être ce qui est de la hanche.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top