Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pedro Vinicius_168218

Verificar se um elemento possui filhos

Recommended Posts

Olá pessoas...

Estou construindo um site responsivo, onde preciso executar uma função apenas se os elementos (neste caso os links) possuírem filhos... Alguém sabe me dizer se seria possível fazer esta verificação com JavaScript puro?

 

Ahh, o código:

<ul>
    <li><a href="#">Link1</a></li>
    <li><a href="#">Link2</a></li>
    <li><a href="#">Link3</a>
        <ul>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
        </ul>
    </li>
    <li><a href="#">Link4</a>
        <ul>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
        </ul>
    </li>
</ul>

 

Ou seja, apenas se um elemento <li> contiver filhos (neste caso <ul>), a ação deverá ser executada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu caro,

 

Você pode receber os filhos do elemento e ver se tal valor é diferente de 0 ou null (não me lembro como é retornado), seria algo assim:

 

 

var qtd = document.getElementById('idPai').childNodes.length;

 

 

Ai faça a verificação com os ifs da vida.

 

Espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom cara eu faria da seguinte maneira:

  1. Pegaria os elementos pelo nome da tag (http://www.w3schools.com/jsref/met_doc_getelementsbytagname.asp)
  2. Faria um laço sobre as lis[iterator].childNodes (http://www.w3schools.com/jsref/prop_node_childnodes.asp)
  3. Verificaria pelo nome da tag, se e UL aplica a funçao (http://www.w3schools.com/jsref/prop_node_nodename.asp)

 

espero que ajude, abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.