由于項目上需要解析xml,于是各種百度,然后自己總結了下各個主流瀏覽器解析xml的方法,只能是很淺顯的知道他的用法,但是還沒有深層次的研究。
不同的瀏覽器對xml的解析方式不同,根據目前主流瀏覽器大致分三類:
第一類,ie祖宗: js 提供用于創建 Automation對象的方法,new ActiveXObject("Microsoft.XMLDOM") ;
第二類:firefox,opera:用構造函數 DOMParser()實例化DOMParser對象,解析xml文本,并返回xml Document對象;
第三類:chrome,safari:由于chrome不支持load方法,故用http協議,XMLHttpRequest對象。
代碼:
function loadXML(){var xmlDoc;try{ //IExmlDoc = new ActiveXObject("Microsoft.XMLDOM");}catch(e){ //firefox,operaxmlDoc = document.implementation.createDocument("","",null);}try{xmlDoc.asyc = false; //是否異步調用xmlDoc.load("xxx.xml"); //文件路徑}catch(e){ //chromevar xmlhttp = new window.XMLHttpRequest();xmlhttp.open("GET","xxx.xml",false); //創建一個新的http請求,并指定此請求的方法、URL以及驗證信息xmlDoc = xmlhttp.responseXML;}return xmlDoc;}返回的xmlDoc對象,其中屬性documentElement包含了xml節點的各種值,可以console出來慢慢找。
ps:如果是讀取本地xml,chrome默認是禁止訪問本地文件,需要增加啟動參數 --allow-file-access-from-files。
以上所述是小編給大家介紹的使用JS讀取XML文件的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
新聞熱點
疑難解答