ホームページ > ウェブフロントエンド > jsチュートリアル > 異なるブラウザ間で JavaScript の XML を確実に解析するにはどうすればよいですか?

異なるブラウザ間で JavaScript の XML を確実に解析するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-25 05:05:10
オリジナル
213 人が閲覧しました

How to Reliably Parse XML in JavaScript Across Different Browsers?

JavaScript でのクロスブラウザー XML 解析の評価

ユビキタス JavaScript の時代では、XML 解析に対する信頼性の高いクロスブラウザー アプローチの必要性が重要になります。さまざまな JavaScript 環境で XML 操作を処理するさまざまな手法を検討してみましょう。

DOMParser の利用 (DOM ツリー構築):

DOMParser インターフェイスは、Chrome、Firefox、Safari などの最新のブラウザに存在します。これにより、XML 文字列から DOM ツリーを構築できます。この機能を利用するには、次のコードを実装します。

if (typeof window.DOMParser != "undefined") {
    parseXml = function(xmlStr) {
        return ( new window.DOMParser() ).parseFromString(xmlStr, "text/xml");
    };
}
ログイン後にコピー

ActiveXObject (レガシー Internet Explorer サポート):

IE 6-10 などの古いバージョンの Internet Explorer では、ActiveXObject を使用します。 XML の解析。これを組み込む方法は次のとおりです:

else if (typeof window.ActiveXObject != "undefined" &&
       new window.ActiveXObject("Microsoft.XMLDOM")) {
    parseXml = function(xmlStr) {
        var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.async = "false";
        xmlDoc.loadXML(xmlStr);
        return xmlDoc;
    };
}
ログイン後にコピー

例外処理:

DOMParser も ActiveXObject もサポートされていない場合、エラーがスローされます:

else {
    throw new Error("No XML parser found");
}
ログイン後にコピー

使用例:

XML 文字列を解析してルート要素を取得するにはname:

var xml = parseXml("<foo>Stuff</foo>");
var rootName = xml.documentElement.nodeName;
ログイン後にコピー

ライブ デモンストレーション:

以下のスニペットでは、XML 文字列の解析後に表示されるルート要素の名前を観察してください:

parseXml = function(xmlStr) {
    //...
};
var xml = parseXml("<foo>Stuff</foo>");
document.body.innerHTML = "Root element: " + xml.documentElement.nodeName;
ログイン後にコピー

このクロスを利用する- JavaScript での XML 解析のブラウザ サポートにより、さまざまな Web プラットフォーム間での XML データの互換性とシームレスな処理が保証されます。

以上が異なるブラウザ間で JavaScript の XML を確実に解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート