JavaScript DOM API予備(整理)

9829 ワード

文書オブジェクトモデル
ドキュメントオブジェクトモデル(Doucment Object Model,DOM)は、ドキュメント(HTMLドキュメント、XMLドキュメントなど)と、ドキュメントを構成する様々な要素とのアクセス、操作を示すアプリケーションインターフェースです.DOMでは、HTMLドキュメントの階層構造をツリー構造として表現しています.ツリーのノードは、ドキュメント内のさまざまなコンテンツを表します.
Domの中ではすべてNodeの対象です.
Element、Text Node、Attribute、CommtはすべてNodeのサブクラスです.つまり、Nodeオブジェクトのすべての属性と方法は、Element、TextNode、Attribute、Compmentに適用され、Element、Text Node、Attribute、Compmentに対して特殊な属性と方法を提供しています.
ノードインターフェースは、巡回および操作ツリーのための属性と方法を定義しています.
NodeオブジェクトのchildNodes属性は、サブノードのリストNodeListオブジェクトに戻り、first Child、lastChild、nextSibling、previous Sibling、parent Node属性は、ツリーを巡回する方法を提供する.apped Child()、removeChild()、replacceChild(old,new)とinsertBefore()の方法は、ドキュメントツリーにノードを追加したり、ドキュメントからノードを削除したりすることができます.
Nodeノードはどうやって巡回しますか?
Node属性の中には、Java.util.Listのサブクラスではなく、NodeオブジェクトのセットであるchildNodes属性がありますが、どのように使用されますか?オブジェクトは、属性と方法を提供し、NodeListのセットにトラバースを提供するために非常に便利である.
  • length属性は、NodeListのうちどれぐらいのnodeオブジェクトがあるかを指摘する.
  • item(index)方法は、childNodesオブジェクト中の第index位置におけるNodeオブジェクトを検索することができる.
  • 例(Java文法):
    NodeList nl = doc.getElementsByTagName_r("*");
    Node n;
    n = nl.item(0);
    System.out.print(n.getNodeName());
    文書ツリーには、ノードの種類を特定のNodeサブインターフェースによって表しています.NodeオブジェクトごとにnodeType属性があり、ノードのタイプを指定します.
    常用ノードタイプ
    <!--&菗13;
    @import url(http://files.cnblogs.com/nayitian/mystyle.css)&13;
    -->
    インターフェース
    nodeType定数
    nodeType値
    Element
    Node.ELLENT_NODE
    1
    Text
    ノード.TEXT_NODE
    3
    Dcument
    ノード.DOCUMENT_NODE
    9
    コメント
    Node.C.OMMENT_NODE
    8
    DcumentFragment
    ノード.DOCUMENT_FRAGMENTNODE
    11
    Attr
    ノード.ATTRIBUTE_NODE
    2
    Nodeオブジェクトの属性
    属性
    説明
    IE
    F
    O
    W 3 C
    baseURI
    ノードの絶対基準URIを返します.
    No.
    1
    No.
    はい
    childNodes
    ノードからサブノードのノードリストを返します.
    5
    1
    9
    はい
    first Child
    ノードの最初のサブノードを返します.
    5
    1
    9
    はい
    lastChild
    ノードの最後のサブノードを返します.
    5
    1
    9
    はい
    local Name
    ノードのローカル名を返します.
    No.
    1
    9
    はい
    name spaceURI
    ノードの名前空間URIを返します.
    No.
    1
    9
    はい
    nextSibling
    ノードの直後に続く同級ノードを返します.
    5
    1
    9
    はい
    nodeName
    ノードの名前を返し、その種類に応じて返します.
    5
    1
    9
    はい
    nodeType
    ノードのタイプを返します.
    5
    1
    9
    はい
    nodeValue
    ノードの値を設定または戻し、その種類に応じて.
    5
    1
    9
    はい
    owner Dcument
    ノードのルート要素を返します.
    5
    1
    9
    はい
    parent Node
    ノードの親ノードを返します.
    5
    1
    9
    はい
    prefix
    ノードの名前空間プレフィックスを設定または返します.
    No.
    1
    9
    はい
    previous Sibling
    ノードの直前に続く同級ノードを返します.
    5
    1
    9
    はい
    text Content
    ノードとその子孫のテキスト内容を設定または返信します.
    No.
    1
    No.
    はい
    テキスト
    ノードとその子孫のテキスト(IE特有の属性)を返します.
    5
    No.
    No.
    No.
    xml
    ノードとその子孫のXML(IE特有の属性)を返します.
    5
    No.
    No.
    No.
    Nodeオブジェクトの方法
    方法
    説明
    IE
    F
    O
    W 3 C
    apped Child()
    ノードのサブノードリストの末尾に新しいサブノードを追加します.
    5
    1
    9
    はい
    clone Node()
    ノードをコピーします
    5
    1
    9
    はい
    compredocument Position()
    二つのノードのドキュメント位置を比較します.
    No.
    1
    No.
    はい
    get Feature(feature、version)
    DOMオブジェクトを返します.このオブジェクトは、指定された特性とバージョンを有する特定のAPIを実行することができます.
     
     
    No.
    はい
    getsUserData(key)
    このノードのキーに関連するオブジェクトを返します.このオブジェクトは、まず同じキーを使ってsetUserDataを呼び出すことによって、このノードに設定されなければなりません.
     
     
    No.
    はい
    has Attributes()
    現在のノードが属性を持っているかどうかを判断します.
    No.
    1
    9
    はい
    has Child Nodes()
    現在のノードがサブノードを持っているかどうかを判断する.
    5
    1
    9
    はい
    insertBefore()
    指定されたサブノードの前に新しいサブノードを挿入します.
    5
    1
    9
    はい
    isDefault Namespace(URI)
    指定された名前空間URIがデフォルトかどうかを返します.
     
     
    No.
    はい
    isEqualNode()
    二つのノードが等しいかどうかをチェックします.
    No.
    No.
    No.
    はい
    isSameNode()
    二つのノードが同じノードかどうかチェックします.
    No.
    1
    No.
    はい
    isSupported()
    現在のノードがサポートしている特性を返します.
     
     
    9
    はい
    lookupNamespaceURI()
    指定されたプレフィックスにマッチする名前空間URIを返します.
    No.
    1
    No.
    はい
    lookuplefix()
    指定された名前空間URIにマッチするプレフィックスを返します.
    No.
    1
    No.
    はい
    normalize()
    隣接するTextノードを統合し、空いているTextノードを削除する.
    5
    1
    9
    はい
    removeChild()
    現在のノードの指定されたサブノードを削除(およびリターン)します.
    5
    1
    9
    はい
    replacceChild()
    新しいノードでサブノードを置換します.
    5
    1
    9
    はい
    selectNodes()
    選択されたノードにはXPS表現で照会します.
    6
     
     
     
    selectSingleNode()
    XPSクエリと一致するノードを検索します.
    6
     
     
     
    transform Node()
    XSLTを使用して、ノードを一つの文字列に変換します.
    6
     
     
     
    tranform NodeToObject()
    XSLTを使用して、ノードをドキュメントに変換します.
    6
     
     
     
    setsUserData(key,data,handler)
    オブジェクトをノードのキーに関連付ける.
     
     
    No.
    はい
    DOM APIは、ドキュメント内の要素を参照する方法を提供する.
    getElements ByTagName(var tagName)
    NodeListオブジェクト(NodeListオブジェクトの挙動は配列と似ています.この関数はtagNameで指定された要素名で構成される配列を返すと考えられます.)を返します.どのタイプのHTML要素のリストが得られますか?なお、HTMLマークは大文字と小文字を区別していないので、この方法に渡す文字列も大文字と小文字を区別していません.「*」をgetElementsByTagName()に送ると、ドキュメント内のすべての要素のリストに戻り、ドキュメント内に表示される順番で順番が変わります.
    getElemenntById(var id)
    この方法は、一致するID属性を有する要素を返す.DockmentオブジェクトとElementオブジェクトはこの2つの方法を持っています.
    DOMツリーのルートノードは、ドキュメントのルート要素を示すElementオブジェクトを参照するDcumentオブジェクトです.ほとんどのDOMツリーは、マーク(例えば、<html>と<i>)を示すElementオブジェクトと、テキスト列を表すTextオブジェクトから構成されている.
    Elementインターフェースのget Attribute()方法、set Attribute()方法とremoveAttribute()方法は、要素の性質を調べ、設定し、削除することができます.
     
    本論文の参考:
    http://blog.sina.com.cn/s/blog_4 ab 0 d 57409 kw 1.
    http://www.w3school.com.cn/xmldom/dom_node.asp
    http://developer.51cto.com/art/201009/224979.htm