From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- files/ru/web/api/node/clonenode/index.html | 135 +++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 files/ru/web/api/node/clonenode/index.html (limited to 'files/ru/web/api/node/clonenode') diff --git a/files/ru/web/api/node/clonenode/index.html b/files/ru/web/api/node/clonenode/index.html new file mode 100644 index 0000000000..5f1f77d5ed --- /dev/null +++ b/files/ru/web/api/node/clonenode/index.html @@ -0,0 +1,135 @@ +--- +title: Node.cloneNode() +slug: Web/API/Node/cloneNode +translation_of: Web/API/Node/cloneNode +--- +
{{APIRef("DOM")}}
+ +

Метод Node.cloneNode() возвращает дубликат узла, из которого этот метод был вызван.

+ +

Синтаксис

+ +
var dupNode = node.cloneNode(deep);
+
+ +
+
node
+
Узел, который будет клонирован.
+
dupNode
+
Новый узел, который будет клоном node
+
deep {{optional_inline}}
+
true, если дети узла должны быть клонированы или false для того, чтобы был клонирован только указанный узел.
+
+ +
+

Примечание: в спецификации DOM4 (как реализовано в Gecko 13.0 {{geckoRelease(13)}}), deep необязательный аргумент. Если он опущен, метод действует как если бы значение deep было true, по умолчанию используется глубокое клонирование. Для создания поверхностного клонирования, deep должен быть установлен как false.

+ +

Это поведение было изменено в последней спецификации, и если опущено значение, метод будет действовать как если бы deep было false. Хотя, это все еще не обязательно, вы всегда должны обеспечить агрументом deep, для прямой и обратной совместимости. С Gecko 28.0 {{geckoRelease(28)}}), консоль предупреждает разработчиков не опускать аргумент. Начиная с Gecko 29.0 {{geckoRelease(29)}}), поверхностный клон, по умолчанию, вместо глубокого клона.

+
+ +

Пример

+ +
    var p = document.getElementById("para1");
+    var p_prime = p.cloneNode(true);
+
+ +

Примечание

+ +

Клонирование узлов копирует все атрибуты и их значения, в том числе собственных (в линию) перехватчиков. Это не копирует пререхватчики событий, добавленных используя addEventListener() или тех что назначены через свойства элемента (т.е node.onclick = fn).

+ +

Дубликат узла, возвращенного cloneNode() не является частью документа, пока не будет добавлен в другой узел, который является частью документа, используя {{domxref("Node.appendChild()")}} или другой метод. Кроме того, не имеет родителя, пока не будет добавлен к другому узлу.

+ +

Если deep установлен как false, дочерние узлы не клонируются. Любой текст, который содержит узел также не клонируется, как и содержащийся в одном или более дочернем узле {{domxref("Text")}}.

+ +

Если deep установлено как true, все поддеревья (включая текст, который может быть потомком узла {{domxref("Text")}}) копируется тоже. Для пустых узлов (т.е {{HTMLElement("img")}} и {{HTMLElement("input")}} элементов) это не имеет значения установлен ли deep как true или false.

+ +
Внимание: cloneNode() может привести к дублированию идентфикаторов элементов в документе.
+ +

Если исходный узел имеет идентификатор и клон размещен в том же документе, идентификатор должен быть изменен, для того что бы быть уникальным. Имя атрибута также может нуждаться в изменении, в зависимости от будущего имени дубликата.

+ +

Чтобы клонировать узел для добавления к другому документу используйте {{domxref("Document.importNode()")}} вместо этого.

+ +

Совместимость с браузерами

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
deep как необязательный параметр +

Yes

+ +

(По умолчанию false)

+
{{CompatGeckoDesktop("13.0")}}{{CompatVersionUnknown}}{{CompatUnknown}} +

Yes

+ +

(По умолчанию false)

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
СвойствоAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
deep как необязательный параметр{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("13.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

Спецификации

+ + -- cgit v1.2.3-54-g00ecf