Afin de détecter IE, la plupart des librairies Javascript font toutes sortes d'astuces.
- jQuery semble ajouter un objet temporaire dans le DOM de vos pages pour détecter certaines fonctionnalités,
- YUI2 effectue un regex sur l'agent utilisateur dans son fichier
YAHOO.env.ua = function()
(dossieryahoo.js
)
Après avoir lu cette réponse il m'est venu à l'esprit que c'est vrai, pour détecter simplement IE en Javascript nous pourrions simplement ajouter à nos pages :
<!--[if IE]><script type="text/javascript">window['isIE'] = true;</script><![endif]-->
<script type="text/javascript" src="all-your-other-scripts-here.js"></script>
Maintenant, le window.isIE
est définie pour tout notre code Javascript, en faisant simplement :
if(window.isIE)
...
Outre le fait que cela pourrait s'avérer pénible parce qu'il faut l'ajouter dans toutes les pages, Y a-t-il des problèmes ou des considérations dont je ne suis pas au courant ?
FYI : Je sais qu'il est préférable d'utiliser détection des objets plutôt que du navigateur mais il y a des cas où vous devez quand même utiliser la détection du navigateur.