Maison > interface Web > js tutoriel > Comment garantir l'analyse XML multiplateforme en JavaScript ?

Comment garantir l'analyse XML multiplateforme en JavaScript ?

Linda Hamilton
Libérer: 2024-11-12 00:52:03
original
981 Les gens l'ont consulté

How to Ensure Cross-Platform XML Parsing in JavaScript?

Analyse XML multiplateforme en JavaScript

L'analyse de fichiers XML en JavaScript peut présenter des défis en raison de problèmes de compatibilité du navigateur. Pour garantir une analyse transparente dans tous les navigateurs, voici une technique qui fonctionne de manière cohérente :

Fonctions d'analyse XML spécifiques au navigateur :

Pour répondre aux différents navigateurs, nous définissons deux fonctions d'analyse :

  • DOMParser (navigateurs modernes) :

    parseXml = function(xmlStr) {
      return ( new window.DOMParser() ).parseFromString(xmlStr, "text/xml");
    };
    Copier après la connexion
  • ActiveXObject (Internet Explorer) :

    parseXml = function(xmlStr) {
      var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.async = "false";
      xmlDoc.loadXML(xmlStr);
      return xmlDoc;
    };
    Copier après la connexion

Mécanisme de repli :

Si aucune de ces fonctions n'est prise en charge, une erreur est générée.

Utilisation :

Pour utiliser ces fonctions, attribuez parseXml à une fonction qui prend en charge votre navigateur cible :

if (typeof window.DOMParser != "undefined") {
    // Use DOMParser for modern browsers
} else if (typeof window.ActiveXObject != "undefined" &&
    new window.ActiveXObject("Microsoft.XMLDOM")) {
    // Use ActiveXObject for Internet Explorer
} else {
    throw new Error("No XML parser found");
}
Copier après la connexion

Exemple :

var xml = parseXml("<foo>Stuff</foo>");
alert(xml.documentElement.nodeName);
Copier après la connexion

Ce code fonctionne dans tous les principaux navigateurs, vous permettant d'analyser les fichiers XML en toute confiance sur toutes les plates-formes et versions de navigateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal