Tout JavaScript.com - Scripts, Tutoriaux, Forums pour webmasters et développeurs
Retour à l'accueil
Rechercher :    

Les indispensables
Magic Menu
Les meilleurs scripts
Les forums
Les tutoriaux
La référence JavaScript
Les actus du net
Les petites annonces

Shopping
Mon livre : Guide complet Javascript - Nouvelle édition
Hébergement web

Compteur de visites
CountUs.fr - Combien de visiteurs actuellement sur votre site ? Avec CountUs, vous le saurez !

Les javascripts
Les plus vus
Les mieux notés
La boutique

Les tutoriaux
Introduction javascript
La structure javascript
Les limites de javascript
Les popups
Les formulaires
Le DHTML
Les cookies
Les frames
Les maths
Les chaînes de caractères
Les expressions régulières
Débugger un script
AJAX / XMLHTTPRequest
Introduction au PHP
Javascript et PHP
Traiter les données PHP
Intro base de données
Optimiser ses développements
Tous les tutoriaux

Les services
Les questions fréquentes
Les forums | Le chat
L'annuaire de sites
Le livre d'or
Contacts
A propos du site
La newsletter
 Inscription à la newsletter
HTML - Texte

Les partenaires
Beauté-test
Mémoclic
Glandouille.com
Nord vs Sud
Révélateur.com
ActuLab
Foorby, favoris en ligne
Une place pour toi
Cadeau gratuit
Config Mac
Pifex











 

Nous avons vu dans la première partie que les navigateurs minoritaires ne se comportent pas comme Internet Explorer (IE) 5 ou Netscape (NS) 6, qui respectent les normes officielles. Malheureusement, IE4 et NS4.X représentent encore plus de 10% des navigateurs. On ne peut donc pas les négliger, au risque de mécontenter une partie de l'audience du site.
La différence de programmation entre navigateurs est minime. C'est simplement l'accès aux objets calques qui diffèrent légèrement. Même si la différence de notation est peu importante, elle nécessite malgré tout de détecter le navigateur et de traiter le calque comme il convient. Cela revient à dupliquer le code.


Internet Explorer 4
IE4 ne reconnaît pas la fonction getElementById(). Tous les objets sont accessibles par le tableau d'objets all. Par exemple, pour accéder au calque moncalque, on écrit :
  document.all["moncalque"]

Les propriétés dans l'objet style existent aussi dans IE4. Par exemple, width, height, color... L'accès à ces propriétés se fait donc par :
  document.all["moncalque"].style.width=100;

REM : Cette notation est également comprise et correctement interprétée par IE5 et plus.


Netscape 4.X
NS4 ne reconnaît pas non plus la fonction getElementById(). L'accès aux objets calque se fait par le tableau layers qui fonctionne comme l'objet all en étant propre à Netscape :
  document.layers["moncalque"]

Netscape a introduit une nouvelle balise propriétaire <LAYER>. Avec NS4, on peut donc déclarer un calque de 2 manières :
  <DIV id="moncalque" style="width:100;height:100;left:500;top:80">

Ou avec la balise <LAYER>
  <LAYER name="moncalque" left=500 top=80 width=100 height=100>

Cette double notation rend l'accès aux propriétés de style différent. On n'utilise pas l'objet style ; l'accès est direct. Pour la largeur du calque, on écrit : <<document.layers["moncalque"].width=100;

REM :
- Une propriété n'existe que si elle a été déclarée dans la balise <DIV> ou <LAYER>.
- Netscape 6 a complétement abandonné la gestion des layers. Ainsi, aucun script DHTML pour NS4 ne peut fonctionner sur NS6 sans adaptation. Voilà une faàon de faire évoluer ses produits discutable : Assurer la compatibilité avec les versions antérieures demande du travail de développement et de test, mais accélère l'installation de la dernière version par les utilisateurs et évite aux développeurs des mises à jour fastidieuses et inutiles.
En agissant ainsi, Netscape s'attire la colère des développeurs et des webmasters et risquent de retarder l'implantation de sa dernière version, en perdant encore plus de parts de marché.
Page précédente : Reconnaître les navigateurs Un exemple complet

| © Tout JavaScript.com 1999-2005 | Scripts | Tutoriaux | Forums | Référence | Magic Menu V2 | Mailociraptor | Petites annonces informatiques |


Edité par DevTribu sarl  Google
Serveur dédié : Page générée en 1 msec
18/05/2008 01:50:26 - OB = off