UNPKG

739 BJavaScriptView Raw
1define( [
2 "../core"
3], function( jQuery ) {
4
5"use strict";
6
7// Cross-browser xml parsing
8jQuery.parseXML = function( data ) {
9 var xml, parserErrorElem;
10 if ( !data || typeof data !== "string" ) {
11 return null;
12 }
13
14 // Support: IE 9 - 11 only
15 // IE throws on parseFromString with invalid input.
16 try {
17 xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" );
18 } catch ( e ) {}
19
20 parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ];
21 if ( !xml || parserErrorElem ) {
22 jQuery.error( "Invalid XML: " + (
23 parserErrorElem ?
24 jQuery.map( parserErrorElem.childNodes, function( el ) {
25 return el.textContent;
26 } ).join( "\n" ) :
27 data
28 ) );
29 }
30 return xml;
31};
32
33return jQuery.parseXML;
34
35} );