OpenLayers OpenLayers

Changeset 1650

Show
Ignore:
Timestamp:
10/06/06 11:33:33 (2 years ago)
Author:
crschmidt
Message:

IE, Safari, and Firefox all deal with XML elements with namespaces in different
ways. I can't even make thigns work in *two* browsers at once -- what a pain.
So, we'll wrap up all the browser-specific stuff in
OpenLayers.Ajax.getElementsByTagNameNS(), which contains the browser funkies,
and as a benefit, we get working WFS in IE.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/lib/OpenLayers/Ajax.js

    r1588 r1650  
    301301}); 
    302302 
     303OpenLayers.Ajax.getElementsByTagNameNS  = function(parentnode, nsuri, nsprefix, tagname) { 
     304    return parentnode.getElementsByTagNameNS ? 
     305        parentnode.getElementsByTagNameNS(nsuri, tagname) 
     306        : parentnode.getElementsByTagName(nsprefix + ':' + tagname); 
     307} 
  • trunk/openlayers/lib/OpenLayers/Feature/WFS.js

    r1588 r1650  
    4848        //this should be overridden by subclasses 
    4949        // must return an Object with 'id' and 'lonlat' values set 
    50         var point = xmlNode.getElementsByTagName("Point"); 
    51         var text  = OpenLayers.Util.getXmlNodeValue(point[0].getElementsByTagName("coordinates")[0]); 
     50        var point = OpenLayers.Ajax.getElementsByTagNameNS(xmlNode, "http://www.opengis.net/gml", "gml", "Point"); 
     51        var text  = OpenLayers.Util.getXmlNodeValue(OpenLayers.Ajax.getElementsByTagNameNS(point[0], "http://www.opengis.net/gml","gml", "coordinates")[0]); 
    5252        var floats = text.split(","); 
    5353        return {lonlat: new OpenLayers.LonLat(parseFloat(floats[0]), 
  • trunk/openlayers/lib/OpenLayers/Tile/WFS.js

    r1590 r1650  
    102102        } 
    103103         
    104         var resultFeatures = doc.getElementsByTagName("featureMember"); 
    105              
     104        var resultFeatures = OpenLayers.Ajax.getElementsByTagNameNS(doc, "http://www.opengis.net/gml","gml", "featureMember"); 
    106105        this.addResults(resultFeatures); 
    107106    }, 
  • trunk/openlayers/lib/OpenLayers/Util.js

    r1601 r1650  
    483483            if (!val) 
    484484                val = node.textContent; 
     485            if (!val) 
     486                val = node.firstChild.nodeValue; 
    485487        },  
    486488        function() {