使用JS讀取XML文件的方法
由于項目上需要解析xml,于是各種百度,然后自己總結(jié)了下各個主流瀏覽器解析xml的方法,只能是很淺顯的知道他的用法,但是還沒有深層次的研究。
不同的瀏覽器對xml的解析方式不同,根據(jù)目前主流瀏覽器大致分三類:
第一類,ie祖宗: js 提供用于創(chuàng)建 Automation對象的方法,new ActiveXObject("Microsoft.XMLDOM") ;
第二類:firefox,opera:用構(gòu)造函數(shù) DOMParser()實例化DOMParser對象,解析xml文本,并返回xml Document對象;
第三類:chrome,safari:由于chrome不支持load方法,故用http協(xié)議,XMLHttpRequest對象。
代碼:
function loadXML(){
var xmlDoc;
try{ //IE
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
}catch(e){ //firefox,opera
xmlDoc = document.implementation.createDocument("","",null);
}
try{
xmlDoc.asyc = false; //是否異步調(diào)用
xmlDoc.load("xxx.xml"); //文件路徑
}catch(e){ //chrome
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET","xxx.xml",false); //創(chuàng)建一個新的http請求,并指定此請求的方法、URL以及驗證信息
xmlDoc = xmlhttp.responseXML;
}
return xmlDoc;
}
返回的xmlDoc對象,其中屬性documentElement包含了xml節(jié)點的各種值,可以console出來慢慢找。
ps:如果是讀取本地xml,chrome默認是禁止訪問本地文件,需要增加啟動參數(shù) --allow-file-access-from-files。
以上所述是小編給大家介紹的使用JS讀取XML文件的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
JS基于設(shè)計模式中的單例模式(Singleton)實現(xiàn)封裝對數(shù)據(jù)增刪改查功能
這篇文章主要介紹了JS基于設(shè)計模式中的單例模式(Singleton)實現(xiàn)封裝對數(shù)據(jù)增刪改查功能.結(jié)合實例形式分析了javascript基于單例模式結(jié)合ajax針對數(shù)據(jù)庫進行增刪改查的相關(guān)操作技巧,需要的朋友可以參考下2018-02-02
JavaScript 事件流、事件處理程序及事件對象總結(jié)
JS與HTML之間的交互通過事件實現(xiàn),事件就是文檔或瀏覽器窗口中發(fā)生的一些特定的交互瞬間,可以使用(或處理程序)來預定事件,以便事件發(fā)生時執(zhí)行相應(yīng)的代碼,本文將介紹JS事件相關(guān)的基礎(chǔ)知識,2017-04-04
關(guān)于javascript sort()排序你可能忽略的一點理解
最近在研究Javascript發(fā)現(xiàn)了其中一些之前忽略的問題,所以想著總結(jié)分享出來,下面這篇文章主要給大家介紹了關(guān)于javascript sort()排序你可能忽略的一點理解,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-07-07
Vant+postcss-pxtorem 實現(xiàn)瀏覽器適配功能
這篇文章主要介紹了Vant+postcss-pxtorem 實現(xiàn)瀏覽器適配,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
javascript+css 網(wǎng)頁每次加載不同樣式的實現(xiàn)方法
用戶每次訪問時隨機載入樣式,讓微博在視覺上保持新鮮感。雖然思路與實現(xiàn)都比較簡單,但還是想記錄下來,與大家分享。2009-12-12

