XML DOM na method na insertBefore()

Pangungusap at paggamit

Ang method na insertBefore() ay nagpapakabit ng isang bagong anak na elemento bago ang umiiral na anak na elemento.

Ang paraan na ito ay ibibigay ang bagong anak na elemento.

Pangunahing balita:

elementNode.insertBefore(new_node,existing_node)
Parameter Paglalarawan
new_node Mga kinakailangan. Ang bagong elemento na idedeklarahan.
existing_node Mga kinakailangan. Mayroon na na elemento. Idedeklarahan ang bagong elemento bago ito.

Mga tagubilin at komentaryo:

Komentaryo:Ang Internet Explorer ay iiwan ang walang kalakal na node na nabuo sa pagitan ng mga node (halimbawa, mga linya ng pagsusulpot), habang hindi ginagawa ito ng Mozilla. Kaya, sa mga susunod na halimbawa, gamit namin ang isang function upang suriin ang node type ng huling anak na elemento.

Ang elemento na may node type na 1, kaya kung ang huling anak na elemento ay hindi elemento, ilipat sa nakaraang elemento at suriin kung ito ay elemento. Ang prosesong ito ay magpapatuloy hanggang sa makita ang huling anak na elemento. Sa pamamagitan ng paraan na ito, makakakuha ng tamang resulta sa Internet Explorer at Mozilla.

Para sa mas maraming impormasyon tungkol sa pagkakaiba ng IE at Mozilla na browser, mangyaring bisitahin ang XML DOM na tutorial sa CodeW3C.com DOM na browser sa ito na kabanata.

mga salin

Sa lahat ng halimbawa, gagamitin namin ang XML na file books.xmlat ang JavaScript na function loadXMLDoc()

Ang nasunod na bahagi ng kodigo ay gumagawa ng isang bagong <book> na elemento at ipinapasok sa huling <book> na elemento ng dokumento:

//check if the last childnode is an element node
function get_lastchild(n)
{
x=n.lastChild;
while (x.nodeType!=1)
  {
  x=x.previousSibling;
  }
return x;
}
xmlDoc=loadXMLDoc("books.xml");
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("A Notebook");
newTitle.appendChild(newText);
newNode.appendChild(newTitle);
xmlDoc.documentElement.insertBefore(newNode,get_lastchild(x));