Comme promis, voici un moyen simple d’éradiquer Internet Explorer 6. Voici le bout de code que vous devez mettre en fin de page, avant la fermeture du </body> :
<!--[if IE6]><br />
<script type="text/javascript"><br />
document.getElementsByTagName("body")[0].innerHTML = '';<br />
</script><br />
<div align="center" style="position:absolute;top:0;width:100%;background:#000000;"><br />
<h1 style="margin:0;padding:0;font-size:22px;color:#FFAA00">Le Webmaster de ce site<br/>
refuse d'afficher son site sur votre navigateur !</h1><br />
<p>Voici une liste exhaustive de navigateurs <strong>PERFORMANTS</strong> et<br/> <strong>GRATUITS</strong> : </p><br />
<ul style="list-style:none;font-size:30px;"><br />
<li><a href="http://www.mozilla-europe.org/fr/firefox/" style="color:#FFAA00;<br/>text-decoration:none">FireFox</a></li><br />
<li><a href="http://www.opera.com/browser/download/" style="color:#FFAA00;<br/>text-decoration:none">Opera</a></li><br />
<li><a href="http://www.apple.com/safari/download/" style="color:#FFAA00;<br/>text-decoration:none">Safari</a></li><br />
<li><a href="http://www.google.com/chrome/" style="color:#FFAA00;<br/>text-decoration:none">Chrome</a></li><br />
</ul><br />
<span style="font-size:8px;">Cliquez sur l'un d'entre eux pour accéder <br/>à la page de téléchargement</span><br />
</div><br />
<![endif]-->
Vous pouvez évidement modifier le message, ce n’est que du code HTML. L’important est de garder les commentaires conditionnels HTML! Voilà, sur ce j’arrêterais de parler d’Internet Explorer, c’est décidé
!
Vous allez me dire que je troll un peu trop en ce moment concernant Internet Explorer mais, là il y à vraiment de quoi s’énerver. Je vous explique :
Avec la popularisation (à outrance?) des requêtes AJAX qui permettent par exemple de modifier le contenu d’une partie de la page, on peut être amener à gérer des liste/combos qui se remplissent dynamiquement en fonction de choix etc.
Horreur et stupéfaction (
), on ne peut pas remplir le contenu d’une liste ‹select› en javascript en envoyant directement le contenu en innerHTML… Jusque là, vous me direz, «bon c’est peut-être récent», ils vont réagir chez cro$oft! Allez donc voir ce lien : bug IE! Vous devez voir comme moi : « Dernière mise à jour: lundi 12 mai 2003″, mais aussi et surtout :
Les informations contenues dans cet article s’appliquent au(x) produit(s) suivant(s):
- Microsoft Internet Explorer 5.0
- Microsoft Internet Explorer 5.01
- Microsoft Internet Explorer (Programming) 5.01 SP1
- Microsoft Internet Explorer 5.5
Je me suis alors demandé : «Je dois déconner, ils parlent d’un truc sous IE5, sous IE7/8 mon script devrait marcher…»! Hmmm…. Non.
Vous pouvez ensuite me dire : «Hmmmf, tu sais pas faire ca en DOM?» ; je répondrais que oui mais s’amuser avec DOM et IE, je ne préfère pas. Notez la belle solution de microsoft qui consiste à entourer le select d’un div qu’on réécrit complètement… « Ca va suffir, vont pas nous faire chier les développeurs, qu’ils se débrouillent! »
Cette fois c’est sûr, je vais réagir : Boycott IE!
D’ici peut, vous verrez apparaître un nouveau billet avec un petit script maison, à inclure dans vos page pour prendre la main de l’utilisateur qui ne connait pas d’alternatives
On l’avait déjà remarqué dans ce billet : IE7 n’aime pas le « application/javascript », les différences de comportements entre IE et les autres navigateurs que nous diront conformes sont légions.
En faisant un simple :
<script type="text/javascript" src="test.js" />
Au lieu de
<script type="text/javascript" src="test.js" ></script>
On s’aperçoit que le premier n’inclura pas le fichier js sous IE tandis que sous Firefox ou Opera, le script sera appelé.
Encore une fois : no coment, juste « quelques » minutes de perdues dans ce monde de brutes