implementation | NN 6 IE 5(Mac)/6(Win) DOM 1 | ||
L´objet implementation (la référence JavaScript pour l´objet DOMImplementation W3C) représente, d´une façon limitée, l´environnement composant le conteneur du document, dans notre cas, le navigateur. Vous pouvez accéder à cet objet gr ce à la propriété document.implementation. |
|||
Les méthodes de l´objet vous permettent de voir quels modules DOM le navigateur dit prendre en charge. Dans Netscape 6, cet objet est aussi une passerelle permettant la création d´objets Document et DocumentType W3C virtuels hors de l´arborescence de documents actuelle. Ainsi, dans Netscape 6, vous pouvez utiliser la propriété document.implementation pour commencer à générer un document non affiché pour les documents XML externes. |
|||
Référence de modèle d'objet | |||
document.implementation |
|||
Propriétés spécifiques à l´objet | |||
Aucune. |
|||
Méthodes spécifiques à l´objet | |||
|
|||
Propriétés de gestionnaire d´événements spécifiques à l´objet | |||
Aucune. |
createDocument() | NN 6 IE s.o DOM 2 |
createDocument("namespaceURI", "qualifiedName", docTypeReference) | |
Renvoie une référence à un nouvel objet Document virtuel du DOM W3C (pas le noeud document d´un document HTML). Netscape 6 élargit cet objet Document avec une méthode load() qui permet aux scripts de charger des documents XML dans le navigateur, bien qu´ils soient invisibles aux yeux de l´utilisateur. Les scripts peuvent alors accéder à l´arborescence de documents du document XML en tant que source de données afin d´afficher des informations dans le document HTML. Si vous chargez un document XML externe, vous pouvez créer l´objet Document avec des valeurs vides pour les trois paramètres: var myXDoc = document.implementation.createDocument("", "", null); |
|
Lors du chargement du document externe, tout ce qui se rapporte à l´espace de nom et à DOCTYPE sera contrôlé par le contenu du document. Consultez la section 5.9.2 du chapitre 5 pour voir un exemple. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence à un objet Document vide. |
createDocumentType() | NN 6 IE s.o DOM 2 |
createDocumentType("qualifiedName", "publicID", "systemID") | |
Renvoie une référence à un nouvel objet virtuel DocumentType du DOM W3C. Vous pouvez transmettre l´objet renvoyé par cette méthode à la méthode DocumentImplementation.createDocument(). |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence à un objet DocumentType qui n´est pas encore associé à un objet Document. |
hasFeature() | NN 6 IE 5(Mac)/6(Win) DOM 1 |
hasFeature("feature", "version") | |
Renvoie la valeur booléenne true si l´application du navigateur prend en charge (c´est-à-dire se conforme aux spécifications) un module et une version du DOM W3C donnés. De la même manière , la méthode isSupported() effectue un test identique sur un noeud individuel, vous permettant de vérifier la prise en charge des fonctionnalités pour le type de noeud courant. Les valeurs de paramètres sont identiques pour les deux méthodes. |
|
C´est au fabricant du navigateur de valider le fait que le DOM implémenté dans le navigateur se conforme à chaque module avant de permettre au navigateur de renvoyer true pour le module. Cela ne signifie pas nécessairement que l´implémentation n´a aucune bogue ou qu´elle est cohérente avec les autres implémentations. Les auteurs de scripts doivent faire attention. |
|
En théorie, vous pouvez utiliser cette méthode pour vérifier la prise en charge des modules avant d´accéder à une propriété ou d´invoquer une méthode. Le fragment de script suivant de la partie d´en-tête d´un document lie dynamiquement un fichier de feuille de style externe différent pour une « véritable » prise en charge CSS2: var cssFile; if (document.implementation.hasFeature("CSS", "2.0")) { cssFile = "styles/corpStyle2.css"; } else { cssFile = "styles/corpStyle1.css"; } document.write(<link rel='stylesheet' type='text/css' href='" + cssFile + "'>");" |
|
Plus de navigateurs prennent en charge cette méthode plutôt que la méthode spécifique à l´élément, ce qui aidera peut-être plus de développeurs à la déployer. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Valeur booléenne: true | false. |