FC ConcursosFC Concursos

Questão FC373359

Considere a página HTML abaixo, que contém código JavaScript. <body> <div> <p>Primeiro Parágrafo.</p> <p>Segundo Parágrafo.</p> </div> <script> var para = document.createElement( "

Desenvolvimento Web

FCC · 2019

Considere a página HTML abaixo, que contém código JavaScript.

 

     <body>

         <div>

            <p>Primeiro Parágrafo.</p>

            <p>Segundo Parágrafo.</p>

         </div>

         <script>

               var para = document.createElement( "p" );

               var node = document.createTextNode( "Terceiro Parágrafo." );

               var element = document.getElementById( "caixa" );

 

...I...;

 

</script>

</body>

 

Sabendo que com HTML DOM, JavaScript pode acessar e mudar os elementos de uma página web, para que o Terceiro Parágrafo seja adicionado ao contêiner identificado como caixa, a lacuna I deve ser corretamente preenchida por

  1. document.getElementById ( "caixa" ) .add ( para )
  2. element.append(para.append ( node ) )
  3. element.innetHTML(para.add ( node ) )
  4. element.addNode(para.addContent ( node ) )
  5. element.appendChild(para.appendChild ( node ) )
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

A expressão element.appendChild(para.appendChild(node)) executa duas operações: primeiro para.appendChild(node) anexa o nó de texto ao elemento para e retorna o próprio node.

Em seguida, element.appendChild(...) recebe esse retorno e anexa o node ao elemento element. Na prática isso desloca o nó de texto do p para o contêiner caixa, deixando o p vazio.

Logo, embora a string "Terceiro Parágrafo." passe a pertencer ao contêiner caixa, ela não ficará encapsulada dentro do elemento <p> criado.

Se o objetivo for inserir o <p> com texto dentro de caixa, a forma correta em cadeia seria: element.appendChild(para).appendChild(node), pois primeiro anexa o p e depois insere o texto nele.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo