rambo ef85d5634b 初始化商家端 1 year ago
..
.travis.yml ef85d5634b 初始化商家端 1 year ago
LICENSE ef85d5634b 初始化商家端 1 year ago
__package__.js ef85d5634b 初始化商家端 1 year ago
changelog ef85d5634b 初始化商家端 1 year ago
component.json ef85d5634b 初始化商家端 1 year ago
dom-parser.js ef85d5634b 初始化商家端 1 year ago
dom.js ef85d5634b 初始化商家端 1 year ago
package.json ef85d5634b 初始化商家端 1 year ago
readme.md ef85d5634b 初始化商家端 1 year ago
sax.js ef85d5634b 初始化商家端 1 year ago

readme.md

XMLDOM Build Status Coverage Status NPM version

A JavaScript implementation of W3C DOM for Node.js, Rhino and the browser. Fully compatible with W3C DOM level2; and some compatible with level3. Supports DOMParser and XMLSerializer interface such as in browser.

Install:

npm install xmldom

Example:

var DOMParser = require('xmldom').DOMParser;
var doc = new DOMParser().parseFromString(
    '<xml xmlns="a" xmlns:c="./lite">\n'+
        '\t<child>test</child>\n'+
        '\t<child></child>\n'+
        '\t<child/>\n'+
    '</xml>'
    ,'text/xml');
doc.documentElement.setAttribute('x','y');
doc.documentElement.setAttributeNS('./lite','c:x','y2');
var nsAttr = doc.documentElement.getAttributeNS('./lite','x')
console.info(nsAttr)
console.info(doc)

API Reference

  • DOMParser:

    parseFromString(xmlsource,mimeType)
    
    • options extension by xmldom(not BOM standard!!)
    //added the options argument
    new DOMParser(options)
        
    //errorHandler is supported
    new DOMParser({
        /**
         * locator is always need for error position info
         */
        locator:{},
        /**
         * you can override the errorHandler for xml parser
         * @link http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html
         */
        errorHandler:{warning:function(w){console.warn(w)},error:callback,fatalError:callback}
        //only callback model
        //errorHandler:function(level,msg){console.log(level,msg)}
    })
            
    
  • XMLSerializer

    serializeToString(node)
    

    DOM level2 method and attribute:

    • Node

      attribute:

      nodeValue|prefix
      

      readonly attribute:

      nodeName|nodeType|parentNode|childNodes|firstChild|lastChild|previousSibling|nextSibling|attributes|ownerDocument|namespaceURI|localName
      

      method:

      insertBefore(newChild, refChild)
      replaceChild(newChild, oldChild)
      removeChild(oldChild)
      appendChild(newChild)
      hasChildNodes()
      cloneNode(deep)
      normalize()
      isSupported(feature, version)
      hasAttributes()
      
    • DOMImplementation

      method:

      hasFeature(feature, version)
      createDocumentType(qualifiedName, publicId, systemId)
      createDocument(namespaceURI, qualifiedName, doctype)
      
    • Document : Node

      readonly attribute:

      doctype|implementation|documentElement
      

      method:

      createElement(tagName)
      createDocumentFragment()
      createTextNode(data)
      createComment(data)
      createCDATASection(data)
      createProcessingInstruction(target, data)
      createAttribute(name)
      createEntityReference(name)
      getElementsByTagName(tagname)
      importNode(importedNode, deep)
      createElementNS(namespaceURI, qualifiedName)
      createAttributeNS(namespaceURI, qualifiedName)
      getElementsByTagNameNS(namespaceURI, localName)
      getElementById(elementId)
      
    • DocumentFragment : Node

    • Element : Node

      readonly attribute:

      tagName
      

      method:

      getAttribute(name)
      setAttribute(name, value)
      removeAttribute(name)
      getAttributeNode(name)
      setAttributeNode(newAttr)
      removeAttributeNode(oldAttr)
      getElementsByTagName(name)
      getAttributeNS(namespaceURI, localName)
      setAttributeNS(namespaceURI, qualifiedName, value)
      removeAttributeNS(namespaceURI, localName)
      getAttributeNodeNS(namespaceURI, localName)
      setAttributeNodeNS(newAttr)
      getElementsByTagNameNS(namespaceURI, localName)
      hasAttribute(name)
      hasAttributeNS(namespaceURI, localName)
      
    • Attr : Node

      attribute:

      value
      

      readonly attribute:

      name|specified|ownerElement
      
    • NodeList

      readonly attribute:

      length
      

      method:

      item(index)
      
    • NamedNodeMap

      readonly attribute:

      length
      

      method:

      getNamedItem(name)
      setNamedItem(arg)
      removeNamedItem(name)
      item(index)
      getNamedItemNS(namespaceURI, localName)
      setNamedItemNS(arg)
      removeNamedItemNS(namespaceURI, localName)
      
    • CharacterData : Node

      method:

      substringData(offset, count)
      appendData(arg)
      insertData(offset, arg)
      deleteData(offset, count)
      replaceData(offset, count, arg)
      
    • Text : CharacterData

      method:

      splitText(offset)
      
    • CDATASection

    • Comment : CharacterData

    • DocumentType

      readonly attribute:

      name|entities|notations|publicId|systemId|internalSubset
      
    • Notation : Node

      readonly attribute:

      publicId|systemId
      
    • Entity : Node

      readonly attribute:

      publicId|systemId|notationName
      
    • EntityReference : Node

    • ProcessingInstruction : Node

      attribute:

      data
      

      readonly attribute:

      target
      

    DOM level 3 support:

    • Node

      attribute:

      textContent
      

      method:

      isDefaultNamespace(namespaceURI){
      lookupNamespaceURI(prefix)
      

    DOM extension by xmldom

    • [Node] Source position extension;

      attribute:

      //Numbered starting from '1'
      lineNumber
      //Numbered starting from '1'
      columnNumber