Propriedade previousSibling do XML DOM

Definição e uso

A propriedade previousSibling retorna o nó anterior irmão do nó selecionado (o nó anterior na mesma hierarquia de árvore).

Se não existir tal nó, a propriedade retorna null.

Sintaxe:

elementNode.previousSibling

Dicas e notas

Nota:O Internet Explorer ignora os nós de texto em branco gerados entre os nós (como caracteres de nova linha), enquanto o Mozilla não faz isso. Portanto, no exemplo a seguir, usamos uma função para detectar o tipo de nó do nó anterior irmão.

O tipo de nó do nó de elemento é 1, portanto, se o nó anterior irmão não for um nó de elemento, mova para o nó anterior e verifique se o nó é um nó de elemento. Este processo continua até encontrar o nó anterior irmão. Este método garante que sejam obtidos resultados corretos no Internet Explorer e no Mozilla.

Para mais informações sobre as diferenças entre os navegadores IE e Mozilla, acesse o tutorial XML DOM no CodeW3C.com Navegador DOM esta seção.

exemplo

Em todos os exemplos, usaremos o arquivo XML books.xmle a função JavaScript loadXMLDoc().

O código fragmento a seguir obtém o nó anterior irmão do primeiro elemento <author> do documento XML:

//verificar se o nó anterior irmão é um nó de elemento
function get_previoussibling(n)
{
var x=n.previousSibling;
while (x.nodeType!=1)
  {
  x=x.previousSibling;
  }
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("author")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_previoussibling(x);
document.write("<br />Antecessor anterior: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

Saída do código acima:

author = Giada De Laurentiis
Antecessor anterior: title = Everyday Italian