aboutsummaryrefslogtreecommitdiff
path: root/files/pt-pt/web/api/node/clonenode/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/pt-pt/web/api/node/clonenode/index.html')
-rw-r--r--files/pt-pt/web/api/node/clonenode/index.html55
1 files changed, 55 insertions, 0 deletions
diff --git a/files/pt-pt/web/api/node/clonenode/index.html b/files/pt-pt/web/api/node/clonenode/index.html
new file mode 100644
index 0000000000..71f0c5064a
--- /dev/null
+++ b/files/pt-pt/web/api/node/clonenode/index.html
@@ -0,0 +1,55 @@
+---
+title: element.cloneNode
+slug: DOM/element.cloneNode
+translation_of: Web/API/Node/cloneNode
+---
+<h3 id="Resumo" name="Resumo">Resumo</h3>
+
+<p>Retorna a cópia de um elemento.</p>
+
+<h3 id="Syntax" name="Syntax">Syntax</h3>
+
+<pre class="eval"><em>dupNode</em> = <em>element</em>.cloneNode(<em>deep</em>);
+</pre>
+
+<ul>
+ <li><code>dupNode</code> é variável que receberá o nó gerado</li>
+ <li><code>element</code> é o elemento pai (o elemento que contém o nó que será copiado)</li>
+ <li><code>deep</code> é um valor boleano, obrigatório que indica de o a clone vai ser completo ou não (ver <a href="#Notas">notas</a>).</li>
+</ul>
+
+<h3 id="Example" name="Example">Example</h3>
+
+<pre>p = document.getElementById("diogok");
+p_prime = p.cloneNode(true);
+</pre>
+
+<h3 id="Notas" name="Notas">Notas</h3>
+
+<p>Clonando um nó copiamos todos seus atributos e seus respectivos valores</p>
+
+<p>O nó clonado retornado por <code>cloneNode</code> não faz parte do documento enquanto não for adicionado a um outro nó que faça parte do documento usando <a href="/pt/DOM/element.appendChild" title="pt/DOM/element.appendChild">appendChild</a> ou outro método similar. Enquanto não for adicionado a um outro nó, será um nó sem pai. Ou seja, o clone não herda o pai do original.</p>
+
+<p>Se <code>deep</code> for <code>false</code>, nada sobre os nós filhos será clonado. <em>Qualquer texto contido no nó não será clonado junto</em>, já que o texto fica contido em nós de texto.</p>
+
+<p>Se <code>deep</code> for <code>true</code>, toda a subárvore (incluíndo texto) é copiado também. Para nós vazios (como os elementos IMG e INPUT) não importa qua valor que você coloque em <code>deep</code>, mas você ainda deve definir um valor</p>
+
+<p>Note que o cloneNode pode causar o problema de termos dois elementos com um mesmo id em um documento!</p>
+
+<p>Somente os eventos colocados em atributos inline são copiados. Os eventos adicionados após a renderização do nó via javascript não são copiados. <code> </code></p>
+
+<pre class="eval">var elms = document.getElementById('foo');
+elms.onclick = function(){
+ alert('Eu não deveria ser copiado?');
+}
+var g = elms.cloneNode(true);
+g.id = 'foo2';
+g.style.top = '0px';
+document.body.appendChild(g);
+</pre>
+
+<p>No trecho de código acima o atributo <code>onclick</code> não é copiado. Nem mesmo com <code>addEventListener</code>.</p>
+
+<h3 id="Especifica.C3.A7.C3.A3o" name="Especifica.C3.A7.C3.A3o">Especificação</h3>
+
+<p><a class="external" href="http://w3.org/TR/DOM-Level-2-Core/core.html#ID-3A0ED0A4">DOM Level 2 Core: cloneNode</a></p>