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/appendchild/index.html | 60 ++++ files/ru/web/api/node/baseuri/index.html | 62 ++++ files/ru/web/api/node/baseuriobject/index.html | 25 ++ files/ru/web/api/node/childnodes/index.html | 68 ++++ files/ru/web/api/node/clonenode/index.html | 135 ++++++++ .../api/node/comparedocumentposition/index.html | 89 +++++ files/ru/web/api/node/contains/index.html | 63 ++++ files/ru/web/api/node/firstchild/index.html | 55 +++ files/ru/web/api/node/getuserdata/index.html | 113 +++++++ files/ru/web/api/node/haschildnodes/index.html | 37 +++ files/ru/web/api/node/index.html | 367 +++++++++++++++++++++ files/ru/web/api/node/innertext/index.html | 46 +++ files/ru/web/api/node/insertbefore/index.html | 132 ++++++++ files/ru/web/api/node/isconnected/index.html | 87 +++++ .../ru/web/api/node/isdefaultnamespace/index.html | 34 ++ files/ru/web/api/node/isequalnode/index.html | 66 ++++ files/ru/web/api/node/issamenode/index.html | 110 ++++++ files/ru/web/api/node/issupported/index.html | 124 +++++++ files/ru/web/api/node/lastchild/index.html | 32 ++ files/ru/web/api/node/localname/index.html | 80 +++++ .../ru/web/api/node/lookupnamespaceuri/index.html | 18 + files/ru/web/api/node/lookupprefix/index.html | 16 + files/ru/web/api/node/namespaceuri/index.html | 45 +++ files/ru/web/api/node/nextsibling/index.html | 83 +++++ files/ru/web/api/node/nodename/index.html | 104 ++++++ files/ru/web/api/node/nodeprincipal/index.html | 28 ++ files/ru/web/api/node/nodetype/index.html | 93 ++++++ files/ru/web/api/node/nodevalue/index.html | 86 +++++ files/ru/web/api/node/normalize/index.html | 43 +++ files/ru/web/api/node/ownerdocument/index.html | 94 ++++++ files/ru/web/api/node/parentelement/index.html | 86 +++++ files/ru/web/api/node/parentnode/index.html | 102 ++++++ files/ru/web/api/node/prefix/index.html | 90 +++++ files/ru/web/api/node/previoussibling/index.html | 51 +++ files/ru/web/api/node/removechild/index.html | 76 +++++ files/ru/web/api/node/textcontent/index.html | 123 +++++++ 36 files changed, 2923 insertions(+) create mode 100644 files/ru/web/api/node/appendchild/index.html create mode 100644 files/ru/web/api/node/baseuri/index.html create mode 100644 files/ru/web/api/node/baseuriobject/index.html create mode 100644 files/ru/web/api/node/childnodes/index.html create mode 100644 files/ru/web/api/node/clonenode/index.html create mode 100644 files/ru/web/api/node/comparedocumentposition/index.html create mode 100644 files/ru/web/api/node/contains/index.html create mode 100644 files/ru/web/api/node/firstchild/index.html create mode 100644 files/ru/web/api/node/getuserdata/index.html create mode 100644 files/ru/web/api/node/haschildnodes/index.html create mode 100644 files/ru/web/api/node/index.html create mode 100644 files/ru/web/api/node/innertext/index.html create mode 100644 files/ru/web/api/node/insertbefore/index.html create mode 100644 files/ru/web/api/node/isconnected/index.html create mode 100644 files/ru/web/api/node/isdefaultnamespace/index.html create mode 100644 files/ru/web/api/node/isequalnode/index.html create mode 100644 files/ru/web/api/node/issamenode/index.html create mode 100644 files/ru/web/api/node/issupported/index.html create mode 100644 files/ru/web/api/node/lastchild/index.html create mode 100644 files/ru/web/api/node/localname/index.html create mode 100644 files/ru/web/api/node/lookupnamespaceuri/index.html create mode 100644 files/ru/web/api/node/lookupprefix/index.html create mode 100644 files/ru/web/api/node/namespaceuri/index.html create mode 100644 files/ru/web/api/node/nextsibling/index.html create mode 100644 files/ru/web/api/node/nodename/index.html create mode 100644 files/ru/web/api/node/nodeprincipal/index.html create mode 100644 files/ru/web/api/node/nodetype/index.html create mode 100644 files/ru/web/api/node/nodevalue/index.html create mode 100644 files/ru/web/api/node/normalize/index.html create mode 100644 files/ru/web/api/node/ownerdocument/index.html create mode 100644 files/ru/web/api/node/parentelement/index.html create mode 100644 files/ru/web/api/node/parentnode/index.html create mode 100644 files/ru/web/api/node/prefix/index.html create mode 100644 files/ru/web/api/node/previoussibling/index.html create mode 100644 files/ru/web/api/node/removechild/index.html create mode 100644 files/ru/web/api/node/textcontent/index.html (limited to 'files/ru/web/api/node') diff --git a/files/ru/web/api/node/appendchild/index.html b/files/ru/web/api/node/appendchild/index.html new file mode 100644 index 0000000000..50af4e38da --- /dev/null +++ b/files/ru/web/api/node/appendchild/index.html @@ -0,0 +1,60 @@ +--- +title: Node.appendChild +slug: Web/API/Node/appendChild +tags: + - API + - DOM + - DOM Element Mehods + - Method + - WebAPI +translation_of: Web/API/Node/appendChild +--- +

Аннотация

+ +

Node.appendChild() добавляет узел в конец списка дочерних элементов указанного родительского узла. Если данный дочерний элемент является ссылкой на существующий узел в документе, то функция appendChild() перемещает его из текущей позиции в новую позицию (нет необходимости удалять узел из родительского узла перед добавлением его к какому-либо другому узлу).

+ +

Это означает, что узел не может находиться в двух точках документа одновременно. Поэтому, если у узла уже есть родитель, он сначала удаляется, а затем добавляется в новую позицию. {{domxref("Node.cloneNode()")}} можно использовать для создания копии узла перед добавлением его в новый родительский элемент. Обратите внимание, что копии, сделанные с помощью cloneNode , не будут автоматически синхронизироваться.

+ +

Если данный дочерний элемент является {{domxref("DocumentFragment")}}, то все содержимое {{domxref("DocumentFragment")}} перемещается в дочерний список указанного родительского узла.

+ +

Синтаксис

+ +
var child = element.appendChild(child);
+ + + +

Возвращаемое значение

+ +

Возвращается дочерний элемент (aChild), кроме тех случаев, когда child это {{domxref("DocumentFragment")}}, в таком случае возвращается пустой {{domxref("DocumentFragment")}}.

+ +

Примечание

+ +

Цепочка может работать не так, как ожидалось, из-за того, что appendChild() возвращает дочерний элемент:

+ +
let aBlock = document.createElement('block').appendChild( document.createElement('b') );
+ +

Присваивает переменной aBlock элемент <b></b>, а не <block></block>, как вы могли ожидать.

+ +

Пример

+ +
// Создаем новый элемент параграфа, и вставляем в конец document body
+var p = document.createElement("p");
+document.body.appendChild(p);
+ +

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

+ + + +

См. также

+ + diff --git a/files/ru/web/api/node/baseuri/index.html b/files/ru/web/api/node/baseuri/index.html new file mode 100644 index 0000000000..fad808069b --- /dev/null +++ b/files/ru/web/api/node/baseuri/index.html @@ -0,0 +1,62 @@ +--- +title: Node.baseURI +slug: Web/API/Node/baseURI +translation_of: Web/API/Node/baseURI +--- +
+
{{APIRef("DOM")}}
+
+ +

 Свойство Node.baseURI только для чтения, возвращающее абсолютный базовый URL узла.

+ +

Базовый URL используется для разрешения относительных URLs, когда браузеру  нужно получить абсолютный URL, например, когда обрабатывает элемент HTML {{HTMLElement("img")}}, src атрибут или XML xlink:href атрибут.

+ +

В самом простом случае, базовывый URL это просто местонахождение документа, но это может зависеть от многих факторов, включая элемент {{HTMLElement("base")}} в HTML и атрибут xml:base в XML.

+ +

Синтаксис

+ +
var baseURI = node.baseURI;
+
+ + + +

Подробности

+ +

Базовый URL документа

+ +

Базовый URL документа по умолчанию, адрес документа (как отображено в браузере и доступно в {{domxref("window.location")}}), но может измениться по умолчанию:

+ + + +

Смотрите Раздел базовый URLs в действующем стандарте HTML для уточнения деталей.

+ +

Вы можите использовать {{domxref("document")}}.baseURI для получения базового URL документа. Заметим, что получение базового URL для документа, может возвращать различные URLs в течение долгого времени, если {{HTMLElement("base")}} теги или местонахождение документа изменилось.

+ +

Базовый URL элемента

+ +

Базовый URL элемента в HTML обычно равен базовому URL документу узла.

+ +

Если документ содержит атрибуты xml:base (которые вы не должны использовать в документах HTML), element.baseURI принимает во внимание xml:base атрибуты родительского элемента, когда вычисляет базовый URL. Для уточнения деталей смотрите xml:base.

+ +

Вы можите использовать {{domxref("element")}}.baseURI для получения базового URL of элемента.

+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/baseuriobject/index.html b/files/ru/web/api/node/baseuriobject/index.html new file mode 100644 index 0000000000..b4d34efb85 --- /dev/null +++ b/files/ru/web/api/node/baseuriobject/index.html @@ -0,0 +1,25 @@ +--- +title: Node.baseURIObject +slug: Web/API/Node/baseURIObject +translation_of: Web/API/Node +--- +
{{APIRef("DOM")}} {{Non-standard_header}}
+ +

Свойство Node.baseURIObject возвращает {{Interface("nsIURI")}} представляющий базовый URL узла (обычно документ или элемент). Это похоже на {{domxref("Node.baseURI")}}, за исключением того, что возвращает nsIURI вместо строки.

+ +

Это свойство существует на всех узлах (HTML, XUL, SVG, MathML, и т.д.), но только если скрипт пытается использовать его имея привилегии UniversalXPConnect.

+ +

Смотрите {{domxref("Node.baseURI")}} для уточнения деталей что такое базовый URL.

+ +

Синтаксис

+ +
uriObj = node.baseURIObject
+
+ +

Примечания

+ +

Это свойство только для чтения; попытка записать информацию в него, будет сбрасывать исключения. Кроме того, это свойство может быть доступно только для привилегированного кода.

+ +

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

+ +

Нет какой-либо спецификации.

diff --git a/files/ru/web/api/node/childnodes/index.html b/files/ru/web/api/node/childnodes/index.html new file mode 100644 index 0000000000..f66b7060b8 --- /dev/null +++ b/files/ru/web/api/node/childnodes/index.html @@ -0,0 +1,68 @@ +--- +title: Node.childNodes +slug: Web/API/Node/childNodes +translation_of: Web/API/Node/childNodes +--- +
+
{{APIRef("DOM")}}
+ +
Доступный для чтения аттрибут Node.childNodes возвращает коллекцию дочерних элементов данного элемента.
+
+ +

Синтаксис

+ +
var ndList = elementNodeReference.childNodes;
+
+ +

ndList -- упорядоченная коллекция объектов элементов, которые являются детьми данного элемента. Если у элемента нет детей, ndList пуст.

+ +

ndList -- переменная, хранящая список дочерних элементов. Тип этого списка --  {{domxref("NodeList")}}.

+ +

Пример

+ +
// parg -- ссылка на элемент <p>
+
+if (parg.hasChildNodes()) {
+  // Таким образом, сначала мы проверям, не пуст ли объект, есть ли у него дети
+  var children = parg.childNodes;
+
+  for (var i = 0; i < children.length; ++i) {
+    // сделать что-то с каждым внутренним элементом через children[i]
+    // ЗАМЕТКА: Список является ссылкой, Добавление или удаление дочерних элементов изменит список
+  }
+}
+ +
+
// Это один из способов удалить все дочерние элементы из элемента
+// box -- ссылка на элемент с детьми
+
+while (box.firstChild) {
+    //Список является ссылкой, то есть он будет переиндексирован перед каждым вызовом
+    box.removeChild(box.firstChild);
+}
+ +

Заметки

+ +

Элементы в коллекции -- объекты, а не строки. Чтобы получить данные из этих объектов, вы должны использовать их свойства (например, elementNodeReference.childNodes[1].nodeName чтобы получить имя, и т. д.).

+ +

Объект document обладает 2-мя детьми: декларацией Doctype и корневым элементов, к которому как правило обращаются как documentElement. (В (X)HTML документах это HTML-элемент.)

+ +

childNodes также включают, например, текстовые узлы и комментарии. Чтобы пропустить их, используйте {{ domxref("ParentNode.children") }} взамен.

+ +

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

+ + + +

См. также

+ + 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}}
+
+ +

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

+ + diff --git a/files/ru/web/api/node/comparedocumentposition/index.html b/files/ru/web/api/node/comparedocumentposition/index.html new file mode 100644 index 0000000000..0be1dac540 --- /dev/null +++ b/files/ru/web/api/node/comparedocumentposition/index.html @@ -0,0 +1,89 @@ +--- +title: Node.compareDocumentPosition +slug: Web/API/Node/compareDocumentPosition +translation_of: Web/API/Node/compareDocumentPosition +--- +

{{ ApiRef() }}

+

Аннотация

+

Сравнивает позицию текущего узла и другого узла в любом другом документе.

+

Синтаксис

+
node.compareDocumentPosition( otherNode )
+
+ +

Возвращаемое значение вычисляется как отношение, которое имеется между otherNode и node.

+

Примечание

+

Возвращаемое значение - это битовая маска со следующими значениями:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ИмяЗначение
DOCUMENT_POSITION_DISCONNECTED1
DOCUMENT_POSITION_PRECEDING2
DOCUMENT_POSITION_FOLLOWING4
DOCUMENT_POSITION_CONTAINS8
DOCUMENT_POSITION_CONTAINED_BY16
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC32
+

Пример

+
var head = document.getElementsByTagName('head').item(0);
+if (head.compareDocumentPosition(document.body) & Node.DOCUMENT_POSITION_FOLLOWING) {
+  console.log("well-formed document");
+} else {
+  console.log("<head> is not before <body>");
+}
+
+
+

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

+
+

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

+ + + + + + + + + + + + + + + + + + +
СпецификацияСтатусКомментарий
DOM Level 3Рекомендация 
DOM StandardЖивой стандарт 
+

Смотрите также

+ +

{{ languages( {"ru-ru": "ru-ru/DOM/Node.compareDocumentPosition" } ) }}

diff --git a/files/ru/web/api/node/contains/index.html b/files/ru/web/api/node/contains/index.html new file mode 100644 index 0000000000..23e8e561c7 --- /dev/null +++ b/files/ru/web/api/node/contains/index.html @@ -0,0 +1,63 @@ +--- +title: Node.contains +slug: Web/API/Node/contains +tags: + - API + - DOM + - Method + - Node +translation_of: Web/API/Node/contains +--- +
{{APIRef("DOM")}}
+ +
Метод Node.contains() возвращает {{jsxref ("Boolean")}} значение, указывающее, является ли узел потомком данного узла, т. е. сам узел, один из его прямых потомков ({{domxref ("Node. childNodes "," childNodes ")}}), один из детей его детей и так далее.
+ +

Синтаксис

+ +
node.contains( otherNode )
+
+ + + +

Пример

+ +

Эта функция проверяет, находится ли элемент в теле страницы.

+ +
function isInPage(node) {
+  return (node === document.body) ? false : document.body.contains(node);
+}
+ +

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

+ + + + + + + + + + + + + + + + +
СпецификацияСтатусКомментарий
{{SpecName("DOM WHATWG", "#dom-node-contains", "Node.contains()")}}{{Spec2("DOM WHATWG")}}Initial definition
+ +

Поддержка браузерами

+ + + +

{{Compat("api.Node.contains")}}

+ +

См. также

+ + diff --git a/files/ru/web/api/node/firstchild/index.html b/files/ru/web/api/node/firstchild/index.html new file mode 100644 index 0000000000..b17ea4fb29 --- /dev/null +++ b/files/ru/web/api/node/firstchild/index.html @@ -0,0 +1,55 @@ +--- +title: Node.firstChild +slug: Web/API/Node/firstChild +translation_of: Web/API/Node/firstChild +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.firstChild только для чтения, возвращающее первый потомок узла в древе или null, если узел является бездетным. Если узел это документ, он возвращает первый узел в списке своих прямых детей.

+ +

Синтаксис

+ +
var childNode = node.firstChild;
+
+ +

Описание

+ +

childNode это ссылка на первый потомок node, если таковой имеется, в противном случае это null.

+ +

Пример

+ +

Этот пример демонстрирует использование firstChild и как этому свойству могут мешать пробелы. Смотрите раздел {{ Anch("Notes") }} для получения дополнительной информации о обработке пробелов в Gecko DOM.

+ +
<p id="para-01">
+  <span>First span</span>
+</p>
+
+<script type="text/javascript">
+  var p01 = document.getElementById('para-01');
+  alert(p01.firstChild.nodeName)
+</script>
+ +

В данном примере alert выведет '#text', потому что текстовый узел вставлен для сохранения пробела между концом открытого <p> и тега <span>. Любое пустое пространство между элементами является причиной вставки узла #text, начиная от единичного пробела, разрыва строки, отступа и так далее.

+ +

Другой #text узел вставляется между закрывающими тегами </span> и </p>.

+ +

Если эти пробелы удаляются из источника,  #text узлы не вставляются и элемент span становится первым потомком обзаца.

+ +
<p id="para-01"><span>First span</span></p>
+
+<script type="text/javascript">
+  var p01 = document.getElementById('para-01');
+  alert(p01.firstChild.nodeName)
+</script>
+
+ +

Теперь alert будет показывать 'SPAN'.

+ +

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

+ + diff --git a/files/ru/web/api/node/getuserdata/index.html b/files/ru/web/api/node/getuserdata/index.html new file mode 100644 index 0000000000..869ef2618a --- /dev/null +++ b/files/ru/web/api/node/getuserdata/index.html @@ -0,0 +1,113 @@ +--- +title: Node.getUserData() +slug: Web/API/Node/getUserData +translation_of: Web/API/Node/getUserData +--- +

{{APIRef("DOM")}}{{ obsolete_header() }}

+ +

Метод Node.getUserData() возвращает любого пользователя {{domxref("DOMUserData")}} установленного предварительно на данном узле через {{domxref("Node.setUserData()")}}.

+ +
+

Методы Node.setUserData и {{domxref("Node.getUserData")}} больше не доступны для веб-контента. {{domxref("Element.dataset")}} или WeakMap могут быть использованы вместо него.

+
+ +

Синтаксис

+ +
userData = someNode.getUserData(userKey);
+ +

Параметры

+ + + +

Пример

+ +
var d = document.setUserData('key', 15, null);
+alert(document.getUserData('key')); // 15
+ +

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

+ + + + + + + + + + + + + + + + + + + + + +
СпецификацияСтатусКоментарий
{{SpecName('DOM WHATWG', '#interface-node', 'Node')}}{{Spec2('DOM WHATWG')}}Удалено из спецификации
{{SpecName('DOM3 Core', 'core.html#Node3-getUserData', 'Node.getUserData()')}}{{Spec2('DOM3 Core')}}Изначальное описание
+ +

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

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatNo}}Поддерживается от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("21.0")}}.
+ Удалено в {{CompatGeckoDesktop("22.0")}} [1]
{{CompatUnknown}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}Поддерживается от {{CompatGeckoMobile("1.0")}} до {{CompatGeckoMobile("21.0")}}.
+ Удалено в {{CompatGeckoMobile("22.0")}} [1]
{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}
+
+ +

[1] Метод по-прежнему доступен для chrome скриптов.

+ +

Смотрите также

+ + diff --git a/files/ru/web/api/node/haschildnodes/index.html b/files/ru/web/api/node/haschildnodes/index.html new file mode 100644 index 0000000000..947072dfe6 --- /dev/null +++ b/files/ru/web/api/node/haschildnodes/index.html @@ -0,0 +1,37 @@ +--- +title: Node.hasChildNodes() +slug: Web/API/Node/hasChildNodes +translation_of: Web/API/Node/hasChildNodes +--- +
+
{{APIRef("DOM")}}
+
+ +

Метод Node.hasChildNodes() возвращает {{jsxref("Boolean")}} значение показывающее имеет ли текущий {{domxref("Node")}} дочерние узлы или нет.

+ +

Синтаксис

+ +
node.hasChildNodes()
+ +

Пример

+ +

Следующий пример удаляет первый дочерний узел внутри элемента с id "foo", если foo имеет дочерние узлы.

+ +
var foo = document.getElementById("foo");
+
+if ( foo.hasChildNodes() ) {
+  foo.removeChild( foo.childNodes[0] );
+}
+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/index.html b/files/ru/web/api/node/index.html new file mode 100644 index 0000000000..5e314a339c --- /dev/null +++ b/files/ru/web/api/node/index.html @@ -0,0 +1,367 @@ +--- +title: Node +slug: Web/API/Node +tags: + - API + - DOM +translation_of: Web/API/Node +--- +
{{APIRef("DOM")}}
+ +

Node это интерфейс, от которого наследуют несколько типов DOM, он так же позволяет различным типам быть обработанными(или протестированными).

+ +

Следующие интерфейсы полностью наследуют от Node его методы и свойства: {{domxref("Document")}}, {{domxref("Element")}}, {{domxref("CharacterData")}} (which {{domxref("Text")}}, {{domxref("Comment")}}, и {{domxref("CDATASection")}} inherit), {{domxref("ProcessingInstruction")}}, {{domxref("DocumentFragment")}}, {{domxref("DocumentType")}}, {{domxref("Notation")}}, {{domxref("Entity")}}, {{domxref("EntityReference")}}

+ +

Эти интерфейсы могут возвращать null в особых случаях, когда методы и свойства не уместны. Они могут сбросить исключение - например, когда добавляются дети к типу узла, у которого не может их существовать.

+ +

Свойства

+ +

Наследует свойства от родителей {{domxref("EventTarget")}}.[1]

+ +
+
{{domxref("Node.baseURI")}} {{readonlyInline}}
+
Возвращает {{domxref("DOMString")}} показывающие основной URL. Понятие основного URL изменяется из одного языка в другой; В HTML, это соответствует протоколу , доменному имени и структуре каталогов, все до последнего '/'.
+
{{domxref("Node.baseURIObject")}} {{Non-standard_inline()}} {{ Fx_minversion_inline("3") }}
+
(Не доступно для веб-контента.) Только для чтения. Объект {{ Interface("nsIURI") }}, представляющий базовый URI элемента.
+
{{domxref("Node.childNodes")}} {{readonlyInline}}
+
Возвращает живой {{domxref("NodeList")}}, содержащий всех потомков данного узла. Живой {{domxref("NodeList")}} означает то, что если потомки узла изменяются, объект {{domxref("NodeList")}} автоматически обновляется.
+
{{domxref("Node.firstChild")}} {{readonlyInline}}
+
Возвращает {{domxref("Node")}}, представляющий первый прямой узел потомок узла или null, если узел не имеет потомков.
+
{{domxref("Node.lastChild")}} {{readonlyInline}}
+
Возвращает {{domxref("Node")}}, представляющий последний прямой узел потомок узла или null, если узел не имеет потомков.
+
{{domxref("Node.localName")}} {{obsolete_inline}}{{readonlyInline}}
+
Возвращает {{domxref("DOMString")}} представляющий локальную часть условного имени элемента. В Firefox 3.5 и более ранних версиях, свойство локального имени в верхнем регистре для HTML элементов (но не XHTML элементов). В более поздних версиях, такого не произошло, и свойство находится в нижнем регистре для HTML и XHTML {{ gecko_minversion_inline("1.9.2") }}. Хотя недавние спецификации требуют от localName быть определенным как интерфейс {{domxref("Element")}}, но браузеры основанные на Gecko все еще реализуют его как интерфейс {{domxref("Node")}}.
+
{{domxref("Node.namespaceURI")}} {{obsolete_inline}}{{readonlyInline}}
+
Пространство имен URI данного узла или null, если нет пространства имен. В Firefox 3.5 и более ранних версиях, HTML элементы не имееют пространства имен. В более поздних версиях, HTML элементы находятся в пространстве имен http://www.w3.org/1999/xhtml для деревьев HTML и XML. {{ gecko_minversion_inline("1.9.2") }}
+ Хотя недавние спецификации требуют namespaceURI быть определенным как интерфейс {{domxref("Element")}}, но браузеры основанные на Gecko все еще реализуют его как интерфейс {{domxref("Node")}}.
+
{{domxref("Node.nextSibling")}} {{readonlyInline}}
+
Возвращает {{domxref("Node")}} представляющий следующий узел в древе или null, если не такого узла.
+
{{domxref("Node.nodeName")}} {{readonlyInline}}
+
Возвращает {{domxref("DOMString")}} содержащий имя узла. Структура имени будет отличаться от типа имени. Например, {{domxref("HTMLElement")}} будет содержать имя соответствующего тега: 'audio' для {{domxref("HTMLAudioElement")}}, узел {{domxref("Text")}} будет строкой '#text' или узел {{domxref("Document")}} будет строкой '#document'.
+
{{domxref("Node.nodePrincipal")}} {{Non-standard_inline()}}{{ Fx_minversion_inline("3") }}
+
{{ Interface("nsIPrincipal") }} представляет основной узел.
+
{{domxref("Node.nodeType")}}{{readonlyInline}}
+
Возвращает беззнаковое короткое число (unsigned short) представляющее тип узла. Возможные значения: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ИмяЗначение
ELEMENT_NODE1
ATTRIBUTE_NODE {{deprecated_inline()}}2
TEXT_NODE3
CDATA_SECTION_NODE {{deprecated_inline()}}4
ENTITY_REFERENCE_NODE {{deprecated_inline()}}5
ENTITY_NODE {{deprecated_inline()}}6
PROCESSING_INSTRUCTION_NODE7
COMMENT_NODE8
DOCUMENT_NODE9
DOCUMENT_TYPE_NODE10
DOCUMENT_FRAGMENT_NODE11
NOTATION_NODE {{deprecated_inline()}}12
+
+
{{domxref("Node.nodeValue")}}
+
Это {{domxref("DOMString")}}, представляющее значение объектов. Для большинства типов Node, возвращает null и любой набор операция игнорируется. Для узлов типа TEXT_NODE ({{domxref("Text")}} objects), COMMENT_NODE ({{domxref("Comment")}} objects), и PROCESSING_INSTRUCTION_NODE ({{domxref("ProcessingInstruction")}} objects), значение соответствует текстовым данным, содержащихся в объекте.
+
{{domxref("Node.ownerDocument")}} {{readonlyInline}}
+
Возвращает {{domxref("Document")}} к которому принадлежит этот узел. Если нет связанного сним документа, возвращает null.
+
{{domxref("Node.parentNode")}} {{readonlyInline}}
+
Возвращает {{domxref("Node")}} который является родителем этого узла. Если нет такого узла, по причине того, что узел находится вверху древа или не относится к древу, данное свойство вернет null.
+
{{domxref("Node.parentElement")}} {{readonlyInline}}
+
Возвращает {{domxref("Element")}} который является родителем данного узла. Если узел не имеет родителя или если родитель не {{domxref("Element")}}, это свойство вернет null.
+
{{domxref("Node.prefix")}} {{obsolete_inline}}{{readonlyInline}}
+
{{domxref("DOMString")}} представляющий префикс пространства имен узла или null если нет префикса точно определенного.
+ Хотя недавние спецификации требуют того, чтобы префикс был определен как интерфейс {{domxref("Element")}}, браузеры основанные на Gecko еще реализовывают его как интерфейс {{domxref("Node")}}.
+
{{domxref("Node.previousSibling")}} {{readonlyInline}}
+
Возвращают {{domxref("Node")}} представляющий предыдущий узел древа или null, если нет такого узла.
+
{{domxref("Node.textContent")}}
+
Это {{domxref("DOMString")}} представляющее текстовый контент элемента и всех его потомков.
+
+ +

Методы

+ +

Наследует методы от своих родителей {{domxref("EventTarget")}}.[1]

+ +
+
{{domxref("Node.appendChild()")}}
+
Вставляет {{domxref("Node")}} как последний дочерний узел данного элемента.
+
{{domxref("Node.cloneNode()")}}
+
Клонирует {{domxref("Node")}}, и опционально, все его компоненты. По умолчанию, оно клонирует содержимое узла.
+
{{domxref("Node.compareDocumentPosition()")}}
+
 
+
{{domxref("Node.contains()")}}
+
 
+
{{domxref("Node.getFeature()")}} {{obsolete_inline}}
+
...
+
{{domxref("Node.getUserData()")}} {{obsolete_inline}}
+
Позволяет пользователю получить некоторый {{domxref("DOMUserData")}} от узла.
+
{{domxref("Node.hasAttributes()")}} {{obsolete_inline}}
+
Возвращает {{domxref("Boolean")}} показывающий, есть ли у элемента какие-либо атрибуты или нет.
+
{{domxref("Node.hasChildNodes()")}}
+
Возвращает {{domxref("Boolean")}} показывающий, есть ли у элемента дочерние узлы или нет.
+
{{domxref("Node.insertBefore()")}}
+
Вставляет первым {{domxref("Node")}} данный в качестве параметра, непосредственно перед вторым, потомком данного элемента {{domxref("Node")}}.
+
{{domxref("Node.isDefaultNamespace()")}}
+
 
+
{{domxref("Node.isEqualNode()")}}
+
 
+
{{domxref("Node.isSameNode()")}} {{obsolete_inline}}
+
 
+
{{domxref("Node.isSupported()")}} {{obsolete_inline}}
+
Возвращает Boolean флаг содержащий результаты теста, реализует ли реализация DOM конкретную особенность и поддерживается ли эта особенность конкретным узлом.
+
{{domxref("Node.lookupPrefix()")}}
+
 
+
{{domxref("Node.lookupNamespaceURI()")}}
+
 
+
{{domxref("Node.normalize()")}}
+
Очищает все текстовые узлы под этим элементом (поглотить смежный, удалить пустой).
+
{{domxref("Node.removeChild()")}}
+
Удаляет дочерний узел из текущего элемента, который должен быть потомком текущего узла.
+
{{domxref("Node.replaceChild()")}}
+
Заменяет одного потомка {{domxref("Node")}} из существующего на второй указанный в параметре.
+
{{domxref("Node.setUserData()")}} {{obsolete_inline}}
+
Позволяет пользователю присоединить или удалить {{domxref("DOMUserData")}} к узлу.
+
 
+
+ +

Примеры

+ +

Просмотреть все дочерние узлы

+ +

Следующая функция рекурсивный цикл всех дочерних узлов узла и она исполняет вызов функции относительно их (и себя относительно родительского узла).

+ +
function DOMComb (oParent, oCallback) {
+  if (oParent.hasChildNodes()) {
+    for (var oNode = oParent.firstChild; oNode; oNode = oNode.nextSibling) {
+      DOMComb(oNode, oCallback);
+    }
+  }
+  oCallback.call(oParent);
+}
+ +

Синтаксис

+ +
DOMComb(parentNode, callbackFunction);
+ +

Описание

+ +

Рекурсивный цикл всех дочерних узлов parentNode и самого parentNode, выполняет callbackFunction относительно их  как эти объекты.

+ +

Параметры

+ +
+
parentNode
+
Родительский узел (Node Object).
+
callbackFunction
+
Обратный вызов функции (Function).
+
+ +

Пример использования

+ +

Следующий пример отправляет в console.log текстовое содержимое body:

+ +
function printContent () {
+  if (this.nodeValue) { console.log(this.nodeValue); }
+}
+
+onload = function () {
+  DOMComb(document.body, printContent);
+};
+ +

Удалить все потомки, вложенные в узел

+ +
Element.prototype.removeAll = function () {
+  while (this.firstChild) { this.removeChild(this.firstChild); }
+  return this;
+};
+ +

Пример использования

+ +
/* ... как альтернатива document.body.innerHTML = "" ... */
+document.body.removeAll();
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
СецификацияСтатусКоментарий
{{SpecName('DOM WHATWG', '#interface-node', 'Node')}}{{Spec2('DOM WHATWG')}}Удалены следующие свойства: attributes, namespaceURI, prefix, и localName.
+ Удалены следующие методы: isSupported(), hasAttributes(), isSameNode(), getFeature(), setUserData(), и getUserData().
{{SpecName('DOM3 Core', 'core.html#ID-1950641247', 'Node')}}{{Spec2('DOM3 Core')}}Методы insertBefore(), replaceChild(), removeChild(), and appendChild() возвращают еще один вид ошибок (NOT_SUPPORTED_ERR) если вызваны из {{domxref("Document")}}.
+ Метод normalize() был модифицирован таким образом, что узел {{domxref("Text")}} также может быть нормализован, если надлежащий флаг {{domxref("DOMConfiguration")}} установлен.
+ Добавлены следующие методы: compareDocumentPosition(), isSameNode(), lookupPrefix(), isDefaultNamespace(), lookupNamespaceURI(), isEqualNode(), getFeature(), setUserData(), and getUserData().
+ Добавлены следующие свойства: baseURI and textContent.
{{SpecName('DOM2 Core', 'core.html#ID-1950641247', 'Node')}}{{Spec2('DOM2 Core')}}Свойство ownerDocument был слегка изменен, так что {{domxref("DocumentFragment")}} также возвращает null.
+ Добавлены следующие свойства: namespaceURI, prefix, and localName.
+ Добавлены следующие методы: normalize(), isSupported() and hasAttributes().
{{SpecName('DOM1', 'level-one-core.html#ID-1950641247', 'Node')}}{{Spec2('DOM1')}}Изначальное описание.
+ +

 

+ +

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

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.0")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
getFeature(){{obsolete_inline}}{{CompatNo}}Поддерживаемые от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("6.0")}}.
+ Удалено в {{CompatGeckoDesktop("7.0")}}
{{CompatUnknown}}{{CompatNo}}{{CompatNo}}
getUserData(), setUserData() and hasAttributes() {{deprecated_inline}}{{CompatNo}}Поддерживаемые от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("21.0")}}.
+ Удалено в {{CompatGeckoDesktop("22.0")}}
{{CompatUnknown}}{{CompatNo}}{{CompatNo}}
isSameNode() {{obsolete_inline}}{{CompatNo}}Поддерживаемые от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("9.0")}}.
+ Удалено в {{CompatGeckoDesktop("10.0")}}
{{CompatUnknown}}{{CompatNo}}{{CompatNo}}
isSupported() {{obsolete_inline}}{{CompatUnknown}}Поддерживаемые от  {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("21.0")}}.
+ Удалено в {{CompatGeckoDesktop("22.0")}}
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
attributes{{CompatNo}}Поддерживаемые от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("21.0")}}.
+ Перемещено к  {{domxref("Element")}} в {{CompatGeckoDesktop("22.0")}}
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatVersionUnknown}}{{CompatGeckoMobile("1.0")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
getFeature(){{obsolete_inline}}{{CompatNo}}Поддерживаемые от  {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("6.0")}}.
+ Удалено в {{CompatGeckoDesktop("7.0")}}
{{CompatUnknown}}{{CompatNo}}{{CompatNo}}
+
+ +

[1] Webkit и Blink неверно не делают Node наследуя от {{domxref("EventTarget")}}.

diff --git a/files/ru/web/api/node/innertext/index.html b/files/ru/web/api/node/innertext/index.html new file mode 100644 index 0000000000..ef23b48d59 --- /dev/null +++ b/files/ru/web/api/node/innertext/index.html @@ -0,0 +1,46 @@ +--- +title: Node.innerText +slug: Web/API/Node/innerText +translation_of: Web/API/HTMLElement/innerText +--- +
{{APIRef("DOM")}}
+ +

Node.innerText - это свойство, позволяющее задавать или получать текстовое содержимое элемента и его потомков. В качестве геттера, свойство приближается к тексту, который пользователь получит, если он выделит содержимое элемента курсором, затем копирует его в буфер обмена.

+ +

Изначально, данное поведение было представленно Internet Explorer, и было формально специализированно в стандарте HTML в 2016 после того, как было адаптированно всеми ведущими браузерами.

+ +

{{domxref("Node.textContent")}} - это альтернативное свойство, которое имеет ряд отличий:

+ + + +

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

+ + + + + + + + + + + + + + +
СпецификацияСтатусКомментарий
{{SpecName('HTML WHATWG', 'dom.html#the-innertext-idl-attribute', 'innerText')}}{{Spec2('HTML WHATWG')}}Представлено, основываясь на черновике спецификации innerText. См. whatwg/html#465 и whatwg/compat#5.
+ +

Поддержка браузерами

+ +

{{Compat("api.Node.innerText")}}

+ +

Смотрите также

+ + diff --git a/files/ru/web/api/node/insertbefore/index.html b/files/ru/web/api/node/insertbefore/index.html new file mode 100644 index 0000000000..f28d388147 --- /dev/null +++ b/files/ru/web/api/node/insertbefore/index.html @@ -0,0 +1,132 @@ +--- +title: Node.insertBefore() +slug: Web/API/Node/insertBefore +tags: + - API + - DOM + - DOM Element Methods + - Method + - WebAPI +translation_of: Web/API/Node/insertBefore +--- +
+
{{APIRef("DOM")}}
+
+ +

Метод Node.insertBefore() добавляет элемент в  список дочерних элементов родителя перед указанным элементом.

+ +

Синтаксис

+ +
var insertedElement = parentElement.insertBefore(newElement, referenceElement);
+
+ +

В Mozilla Firefox, если referenceElement не задан или равен null, newElement вcтавляется в конец списка дочерних элеметнов. В IE, referenceElement равный undefined, сгенерируется исключение "Invalid argument", в то время как Chrome сгенерирует исключение  "Uncaught TypeError", ожидая 2 аргумента.

+ + + +

Пример

+ +
<div id="parentElement">
+  <span id="childElement">foo bar</span>
+</div>
+
+<script>
+// Создаем новый <span>
+var sp1 = document.createElement("span");
+
+// Получаем ссылку на элемент, перед которым мы хотим вставить sp1
+var sp2 = document.getElementById("childElement");
+//Получаем ссылку на родителя sp2
+var parentDiv = sp2.parentNode;
+
+// Вставляем sp1 перед sp2
+parentDiv.insertBefore(sp1, sp2);
+</script>
+
+ +

Однако нет метода insertAfter. Он может быть заменен использованием метода insertBefore в связке с nextSibling.

+ +

В предыдущем примере sp1 может быть вставлен после sp2 следующим образом:

+ +
parentDiv.insertBefore(sp1, sp2.nextSibling);
+ +

Если sp2 не имеет следующего элемента, то он будет последним дочерним элементом,  sp2.nextSibling вернет null, а sp1 вставится в конец дочернего узла (сразу после sp2).

+ +

Пример 2

+ +

Вставка элемента перед первым дочерним элементом с помощью firstChild.

+ +
// Получаем ссылку на элемент в который мы хотим добавить новый элемент
+var parentElement = document.getElementById('parentElement');
+// Получаем ссылку на первый дочерний элемент
+var theFirstChild = parentElement.firstChild;
+
+// Создаем новый элемент, который будем добавлять
+var newElement = document.createElement("div");
+
+// Вставляем новый элемент перед первым дочерним элементом
+parentElement.insertBefore(newElement, theFirstChild);
+
+ +

Когда у родителя нет первого дочернего элемента, firstChild вернет null. Новый элемент все равно будет втавляться после последнего дочернего элемента. Но так как родитель не имеет первого дочернего элемета, то он не будет иметь и последнего. Следовательно, после добавления в него элемента, этот элемент будет единственным дочерним элементом.

+ +

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

+ +

{{CompatibilityTable()}}

+ +
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Базовая поддержка1.0{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

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

+ + diff --git a/files/ru/web/api/node/isconnected/index.html b/files/ru/web/api/node/isconnected/index.html new file mode 100644 index 0000000000..aef8cf8ee7 --- /dev/null +++ b/files/ru/web/api/node/isconnected/index.html @@ -0,0 +1,87 @@ +--- +title: Node.isConnected +slug: Web/API/Node/isConnected +translation_of: Web/API/Node/isConnected +--- +

{{APIRef("DOM")}}

+ +

The isConnected read-only property of the {{domxref("Node")}} interface returns a boolean indicating whether the Node is connected (directly or indirectly) to the context object, for example the {{domxref("Document")}} object in the case of the normal DOM, or the {{domxref("ShadowRoot")}} in the case of a shadow DOM.

+ +

Синтаксис

+ +
var isItConnected = nodeObjectInstance.isConnected
+ +

Return value

+ +

A {{domxref("Boolean")}} that is true if the node is connected to its relevant context object, and false if not.

+ +

Пример

+ +

Стандартный DOM пример:

+ +
let test = document.createElement('p');
+console.log(test.isConnected); // returns false
+document.body.appendChild(test);
+console.log(test.isConnected); // returns true
+
+ +

A shadow DOM example:

+ +
// Create a shadow root
+var shadow = this.attachShadow({mode: 'open'});
+
+// Create some CSS to apply to the shadow dom
+var style = document.createElement('style');
+console.log(style.isConnected); // returns false
+
+style.textContent = '.wrapper {' +
+                       'position: relative;' +
+                    '}' +
+
+                     '.info {' +
+                        'font-size: 0.8rem;' +
+                        'width: 200px;' +
+                        'display: inline-block;' +
+                        'border: 1px solid black;' +
+                        'padding: 10px;' +
+                        'background: white;' +
+                        'border-radius: 10px;' +
+                        'opacity: 0;' +
+                        'transition: 0.6s all;' +
+                        'position: absolute;' +
+                        'bottom: 20px;' +
+                        'left: 10px;' +
+                        'z-index: 3;' +
+                      '}' +
+
+// attach the created style element to the shadow dom
+
+shadow.appendChild(style);
+console.log(style.isConnected); // returns true
+ +

 

+ +

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

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM WHATWG','#dom-node-isconnected','isConnected')}}{{Spec2('DOM WHATWG')}}Initial definition.
+ +

Поддержка Браузерами

+ +
+ + +

{{Compat("api.Node.isConnected")}}

+
diff --git a/files/ru/web/api/node/isdefaultnamespace/index.html b/files/ru/web/api/node/isdefaultnamespace/index.html new file mode 100644 index 0000000000..941474c135 --- /dev/null +++ b/files/ru/web/api/node/isdefaultnamespace/index.html @@ -0,0 +1,34 @@ +--- +title: Node.isDefaultNamespace() +slug: Web/API/Node/isDefaultNamespace +translation_of: Web/API/Node/isDefaultNamespace +--- +
+
{{APIRef("DOM")}}
+
+ +

Метод Node.isDefaultNamespace() принимает URI пространства имен в качестве аргумента и возвращает {{jsxref("Boolean")}} со значением true если пространство имен является пространством имен данного узла по умолчанию или false если нет.

+ +

Синтаксис

+ +
result = node.isDefaultNamespace(namespaceURI)
+
+ + + +

Пример

+ +
var XULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
+var el = document.getElementsByTagNameNS(XULNS, 'textbox')[0];
+
+alert(el.isDefaultNamespace(XULNS)); // true
+ +

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

+ + diff --git a/files/ru/web/api/node/isequalnode/index.html b/files/ru/web/api/node/isequalnode/index.html new file mode 100644 index 0000000000..3c76678b0a --- /dev/null +++ b/files/ru/web/api/node/isequalnode/index.html @@ -0,0 +1,66 @@ +--- +title: Node.isEqualNode() +slug: Web/API/Node/isEqualNode +translation_of: Web/API/Node/isEqualNode +--- +
+
{{APIRef("DOM")}}
+
+ +

 Node.isEqualNode() проверяет, равны ли два узла. Два узла равны, когда они имеют один и тот же тип, определяющий характеристики (для элементов это будет их идентификатор, количество потомков и т. д.), Его атрибуты совпадают и т. д. Конкретный набор точек данных, которые должны совпадать, зависит от типов узлов.

+ +

Синтаксис

+ +
var isEqualNode = node.isEqualNode(otherNode);
+
+ + + +

Пример

+ +

В этом примере мы создаем три блока {{HTMLElement ("div")}}. Первый и третий имеют одинаковое содержание и атрибуты, в то время как второй отличается. Затем мы запускаем некоторый JavaScript код для сравнения узлов с помощью isEqualNode () и выводим результаты.

+ +

HTML

+ +
<div>This is the first element.</div>
+<div>This is the second element.</div>
+<div>This is the first element.</div>
+
+<p id="output"></p>
+ + + + + +

JavaScript

+ +
let output = document.getElementById("output");
+let divList  = document.getElementsByTagName("div");
+
+output.innerHTML += "div 0 equals div 0: " + divList[0].isEqualNode(divList[0]) + "<br/>";
+output.innerHTML += "div 0 equals div 1: " + divList[0].isEqualNode(divList[1]) + "<br/>";
+output.innerHTML += "div 0 equals div 2: " + divList[0].isEqualNode(divList[2]) + "<br/>";
+ +

Results

+ +

{{ EmbedLiveSample('Example', 480) }}

+ +

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

+ + diff --git a/files/ru/web/api/node/issamenode/index.html b/files/ru/web/api/node/issamenode/index.html new file mode 100644 index 0000000000..b8050e92d6 --- /dev/null +++ b/files/ru/web/api/node/issamenode/index.html @@ -0,0 +1,110 @@ +--- +title: Node.isSameNode() +slug: Web/API/Node/isSameNode +translation_of: Web/API/Node/isSameNode +--- +
{{APIRef("DOM")}} {{ Obsolete_header }}
+ +

The Node.isSameNode() проверяет ссылаются ли два узла на один и тот же объект.

+ +
+

Предупреждение: Данный метод больше не реализуется в последних браузерах.

+ +
// Instead of using
+node1.isSameNode(node2)
+
+// use
+node1 === node2 // or
+node1 == node2
+
+ +

Синтаксис

+ +
var isSameNode = node.isSameNode(other);
+
+ + + +

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

+ + + + + + + + + + + + + + + + + + + + + +
СпецификацияСтатусКоментарий
{{SpecName('DOM WHATWG', '#interface-node', 'Node')}}{{Spec2('DOM WHATWG')}}Удалено из спецификации.
{{SpecName('DOM3 Core', 'core.html#Node3-isSameNode', 'Node.isSameNode()')}}{{Spec2('DOM3 Core')}}Изначальное описание.
+ +

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

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatUnknown}}Поддерживается от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("9.0")}}.
+ Удалено в {{CompatGeckoDesktop("10.0")}}
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}}Поддерживается от {{CompatGeckoMobile("1.0")}} до {{CompatGeckoMobile("9.0")}}.
+ Удалено в {{CompatGeckoMobile("10.0")}}
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

Смотрите также

+ + diff --git a/files/ru/web/api/node/issupported/index.html b/files/ru/web/api/node/issupported/index.html new file mode 100644 index 0000000000..0581349b24 --- /dev/null +++ b/files/ru/web/api/node/issupported/index.html @@ -0,0 +1,124 @@ +--- +title: Node.isSupported() +slug: Web/API/Node/isSupported +translation_of: Web/API/Node/isSupported +--- +

{{APIRef("DOM")}}{{obsolete_header}}

+ +

Node.isSupported() возвращает {{domxref("Boolean")}} флаг содержащий результат проверки реализует ли реализация DOM определенное свойство и поддерживается ли это свойство конкретным узлом.

+ +

Синтаксис

+ +
boolValue = element.isSupported(feature, version)
+ +

Параметры

+ +
+
feature
+
Это {{domxref("DOMString")}} содержащая имя свойства для проверки. Это тоже имя, которое может быть передано в метод hasFeature в DOMImplementation. Возможные значения определенные в спецификации ядра DOM перечислены в DOM Level 2 соответствующий раздел.
+
version
+
Это {{domxref("DOMString")}} содержащая номер версии свойства для ис проверки.В DOM уровень 2, version 1, это строка 2.0. если версия не указана, поддерживает любую версию свойства, вызывает метод и возвращает true.
+
+ +

Пример

+ +
<div id="doc">
+</div>
+
+<script>
+ // Получить элемент и проверить поддерживает ли он модуль DOM2 HTML.
+ var main = document.getElementById('doc');
+ var output = main.isSupported('HTML', '2.0');
+</script>
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
СпецификацияСтатусКоментарий
{{SpecName('DOM WHATWG', '#interface-node', 'Node')}}{{Spec2('DOM WHATWG')}}Удалено из спецификации.
{{SpecName('DOM3 Core', '/core.html#Level-2-Core-Node-supports', 'Node.isSupported()')}}{{Spec2('DOM3 Core')}}Никаких изменений с {{SpecName('DOM2 Core')}}.
{{SpecName('DOM2 Core', '/core.html#Level-2-Core-Node-supports', 'Node.isSupported()')}}{{Spec2('DOM2 Core')}}Изначальное описание.
+ +

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

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatUnknown}}Поддерживается от {{CompatGeckoDesktop("1.0")}} до {{CompatGeckoDesktop("21.0")}}.
+ Удалено в {{CompatGeckoDesktop("22.0")}} [1]
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}}Поддерживается от {{CompatGeckoMobile("1.0")}} до {{CompatGeckoMobile("21.0")}}.
+ Удалено в {{CompatGeckoMobile("22.0")}} [1]
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

Gecko-специфичные замечания

+ +

[1] Начиная с Gecko 19.0 {{geckoRelease("19.0")}} этот метод всегда будет возвращать true ({{bug("801425")}}) и начиная с Gecko 22.0 {{geckoRelease("22.0")}} этот метод был удален.

+ +

Смотрите также

+ + diff --git a/files/ru/web/api/node/lastchild/index.html b/files/ru/web/api/node/lastchild/index.html new file mode 100644 index 0000000000..6c0f0d9722 --- /dev/null +++ b/files/ru/web/api/node/lastchild/index.html @@ -0,0 +1,32 @@ +--- +title: Node.lastChild +slug: Web/API/Node/lastChild +translation_of: Web/API/Node/lastChild +--- +

{{ ApiRef() }}

+ +

Основная информация

+ +

lastChild возвращает последнего потомка в узле.

+ +

Синтаксис

+ +
var last_child = element.lastChild
+
+ +

Описание

+ +

Возвращаемый элемент last_child является узлом. Если его родитель является элементом, то возвращаемый узел является узлом типа Элемент, Текст, или же узлом комментария. Если в опрашиваемом узле нет дочерних элементов, lastChild возвращает null .

+ +

Пример

+ +
var tr = document.getElementById("row1");
+var corner_td = tr.lastChild;
+
+ +

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

+ + diff --git a/files/ru/web/api/node/localname/index.html b/files/ru/web/api/node/localname/index.html new file mode 100644 index 0000000000..2942a8fa66 --- /dev/null +++ b/files/ru/web/api/node/localname/index.html @@ -0,0 +1,80 @@ +--- +title: Node.localName +slug: Web/API/Node/localName +translation_of: Web/API/Node/localName +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.localName только для чтения, возвращает локальную часть полного имени этого узла.

+ +

Синтаксис

+ +
name = element.localName
+
+ + + +

Пример

+ +

(Должен быть обработан с XML типом содержимого, таким как text/xml или application/xhtml+xml.)

+ +
<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:svg="http://www.w3.org/2000/svg">
+<head>
+  <script type="application/javascript"><![CDATA[
+  function test() {
+    var text = document.getElementById('text');
+    var circle = document.getElementById('circle');
+
+    text.value = "<svg:circle> has:\n" +
+                 "localName = '" + circle.localName + "'\n" +
+                 "namespaceURI = '" + circle.namespaceURI + "'";
+  }
+  ]]></script>
+</head>
+<body onload="test()">
+  <svg:svg version="1.1"
+    width="100px" height="100px"
+    viewBox="0 0 100 100">
+    <svg:circle cx="50" cy="50" r="30" style="fill:#aaa" id="circle"/>
+  </svg:svg>
+  <textarea id="text" rows="4" cols="55"/>
+</body>
+</html>
+
+ +

Примечания

+ +

Локальное имя узла, является полным именем узла, которое идет после двоеточия. Полное имя, как правило, используется как часть пространства имен для конкретных XML документов. Например, полное имя ecomm:partners, partners это локальное имя и ecomm это префикс:

+ +
<ecomm:business id="soda_shop" type="brick_n_mortar" xmlns:ecomm="http://example.com/ecomm">
+  <ecomm:partners>
+    <ecomm:partner id="1001">Tony's Syrup Warehouse
+    </ecomm:partner>
+  </ecomm:partner>
+</ecomm:business>
+
+ + +
+

Примечание: В {{Gecko("1.9.2")}} и ранее, свойство возвращает версию локального имени в верхнем регистре для HTML элементов в HTML DOMs (в отличии от XHTML элементов в XML DOMs). В более поздних версиях, в соответствии с HTML5, свойство возвращает, в случае внутреннего хранилища DOM, в нижнем регистре для HTML элементов в HTML DOMs и XHTML элементов в XML DOMs. {{domxref("element.tagName","tagName")}} свойство продолжает возвращать в верхнем регистре для HTML элементов в HTML DOMs.

+
+ +

Для узла другово типа отличного от ELEMENT_NODE и ATTRIBUTE_NODE localName всегда null.

+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/lookupnamespaceuri/index.html b/files/ru/web/api/node/lookupnamespaceuri/index.html new file mode 100644 index 0000000000..10899ce8ae --- /dev/null +++ b/files/ru/web/api/node/lookupnamespaceuri/index.html @@ -0,0 +1,18 @@ +--- +title: Node.lookupNamespaceURI() +slug: Web/API/Node/lookupNamespaceURI +translation_of: Web/API/Node/lookupNamespaceURI +--- +
{{APIRef("DOM")}}
+ +

Метод Node.lookupNamespaceURI() берет префикс и возвращает пространство имен URI связанное с ним в данном узле, если найден (и null если нет). Устанавливает null для префикса который возвращает пространство имен по умолчанию.

+ +

Из-за ошибки bug 312019, этот метод не работает с динамическим назначением пространства имен (т.е., с уставленным тем же Node.prefix).

+ +

Смотрите также

+ + + +

 

diff --git a/files/ru/web/api/node/lookupprefix/index.html b/files/ru/web/api/node/lookupprefix/index.html new file mode 100644 index 0000000000..10a92d81af --- /dev/null +++ b/files/ru/web/api/node/lookupprefix/index.html @@ -0,0 +1,16 @@ +--- +title: Node.lookupPrefix() +slug: Web/API/Node/lookupPrefix +translation_of: Web/API/Node/lookupPrefix +--- +
{{APIRef("DOM")}}
+ +

Метод Node.lookupPrefix() возвращает {{domxref("DOMString")}} содержащий префикс для данного пространства имен URI, если он присутствует, и null если нет. Когда возможно присутствие нескольких префиксов, результат зависит от реализации.

+ +

Из-за ошибки bug 312019, этот метод не работает с динамическим назначением пространства имен, которое установлено с тем же свойством {{domxref("Node.prefix")}}.

+ +

Смотрите также

+ + diff --git a/files/ru/web/api/node/namespaceuri/index.html b/files/ru/web/api/node/namespaceuri/index.html new file mode 100644 index 0000000000..4e4c75e59e --- /dev/null +++ b/files/ru/web/api/node/namespaceuri/index.html @@ -0,0 +1,45 @@ +--- +title: Node.namespaceURI +slug: Web/API/Node/namespaceURI +translation_of: Web/API/Node/namespaceURI +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.namespaceURI только для чтения, возвращает пространство имен URI узла или null, если узел не находится в пространстве имен (только для чтения). Хотя узел документа, возвращает пространство имен XML для текущего документа.

+ +

Синтаксис

+ +
namespace = node.namespaceURI
+ +

Пример

+ +

В этом снипнете, узел рассматривается для его localName и его namespaceURI. Если namespaceURI возвращает XUL пространство имен и localName возвращая "browser", затем узел XUL согласует <browser/>.

+ +
if (node.localName == "browser" &&
+    node.namespaceURI == "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul") {
+  // this is a XUL browser
+}
+ +

Примечание

+ +

Это не вычисленное значение, которое является результатом поиска имен на основе проверки декларации в области пространства имен. Пространство имен URI узла заморожена в момент создания узла.

+ +

В Firefox 3.5 и выше, пространство имен URI для HTML элементов в HTML документах это null. В более поздних версиях, в соответствии с HTML5, это http://www.w3.org/1999/xhtml как в XHTML. {{gecko_minversion_inline("1.9.2")}}

+ +

Для узлов любого nodeType кроме ELEMENT_NODE и ATTRIBUTE_NODE значение namespaceURI всегда null.

+ +

Вы можите создать элемент с конкретным namespaceURI используйте метод DOM Level 2 document.createElementNS.

+ +

Через пространство имен в XML спецификации, атрибуты не наследуют пространство имен для элемента к которому он прикреплен. Если у атрибута не задано явно пространство имен, он не имеет пространства имен.

+ +

DOM не обрабатывает или не вынуждает проверять пространство имен как таковое. Приложения выше DOM, делают необходимые проверки. Отметим также, что префикс пространства имен, когда он связан с конкретным узлом, не может быть изменен.

+ +

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

+ + diff --git a/files/ru/web/api/node/nextsibling/index.html b/files/ru/web/api/node/nextsibling/index.html new file mode 100644 index 0000000000..cc874be72e --- /dev/null +++ b/files/ru/web/api/node/nextsibling/index.html @@ -0,0 +1,83 @@ +--- +title: Node.nextSibling +slug: Web/API/Node/nextSibling +tags: + - API + - DOM + - Gecko + - Node + - Property + - Свойство + - Узел + - Узлы +translation_of: Web/API/Node/nextSibling +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.nextSibling используется только для чтения и возвращает узел, непосредственно следующий за данным узлом в списке  {{domxref("Node.childNodes","childNodes")}} его родительского элемента, или null если данный узел последний в этом списке.

+ +

Синтаксис

+ +
nextNode = node.nextSibling
+
+ +

Заметки

+ +

Браузеры, основанные на Gecko, вставляют текстовые узлы в документ для представления пробелов в разметке. + Поэтому узел, полученный, например, при использовании Node.firstChild или Node.previousSibling может относиться к + пробелу, а не к тому элементу, который автор хотел получить.

+ +

Смотрите Пробел в DOM и + W3C DOM 3 FAQ: Почему некоторые текстовые узлы пустые? + для дополнительной информации.

+ +

Пример

+ +
<div id="div-01">Вот div-01</div>
+<div id="div-02">Вот div-02</div>
+
+<script type="text/javascript">
+var el = document.getElementById('div-01').nextSibling,
+    i = 1;
+
+console.log('Потомки div-01:');
+
+while (el) {
+  console.log(i + '. ' + el.nodeName);
+  el = el.nextSibling;
+  i++;
+}
+
+</script>
+
+/**************************************************
+  Следующий пример напишет в консоль:
+
+     Потомки div-01:
+
+      1. #text
+      2. DIV
+      3. #text
+      4. SCRIPT
+
+**************************************************/
+
+ +

В приведенном выше примере вы можете видеть, что #text узлы вставляются в DOM, где между тегами встречаются пробелы (т.е. после закрывающего тега элемента и до открывающего тега рядом). Не создается пробелов между элементами, вставленных с помощью document.write

+ +

Возможность включения текстовых узлов в DOM должна быть разрешена, когда DOM обходится с помощью nextSibling. Смотрите раздел "Заметки".

+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/nodename/index.html b/files/ru/web/api/node/nodename/index.html new file mode 100644 index 0000000000..36962d050a --- /dev/null +++ b/files/ru/web/api/node/nodename/index.html @@ -0,0 +1,104 @@ +--- +title: Node.nodeName +slug: Web/API/Node/nodeName +translation_of: Web/API/Node/nodeName +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.nodeName только для чтения, возвращающие имя текущего узла в виде строки.

+ +

Возвращаемое значение для различных типов узлов:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Интерфейсзначение nodeName
{{domxref("Attr")}}Значение {{domxref("Attr.name")}}
{{domxref("CDATASection")}}"#cdata-section"
{{domxref("Comment")}}"#comment"
{{domxref("Document")}}"#document"
{{domxref("DocumentFragment")}}"#document-fragment"
{{domxref("DocumentType")}}Значение {{domxref("DocumentType.name")}}
{{domxref("Element")}}Значение {{domxref("Element.tagName")}}
{{domxref("Entity")}}имя сущности
{{domxref("EntityReference")}}Имя сущности ссылки
{{domxref("Notation")}}Название обозначения
{{domxref("ProcessingInstruction")}} +

Значение {{domxref("ProcessingInstruction.target")}}

+
{{domxref("Text")}}"#text"
+ +

Синтаксис

+ +
var str = node.nodeName;
+
+ +

Пример

+ +

Учитывая следующую разметку:

+ +
<div id="d1">hello world</div>
+<input type="text" id="t"/>
+
+ +

и следующий скрипт:

+ +
var div1 = document.getElementById("d1");
+var text_field = document.getElementById("t");
+
+text_field.value = div1.nodeName;
+
+ +

В XHTML (или любых других форматов XML), значение text_field будет прочитано как "div". Тем не мение, в HTML, значение text_field будет прочитано  как "DIV", потому что nodeName и tagName возвращают в верхнем регистре элементы HTML в DOM помеченом как HTML документ. Узнайте больше деталей о чувствительности регистра nodeName в различных браузерах.

+ +

Обратите внимание, что свойство tagName можно было бы использовать вместо него, поскольку nodeName имеет тоже значение что и tagName для элемента. Однако имейте в виду, что nodeName будет возвращать #text для текстого узла, в то время как tagName будет возвращать undefined.

+ +

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

+ + diff --git a/files/ru/web/api/node/nodeprincipal/index.html b/files/ru/web/api/node/nodeprincipal/index.html new file mode 100644 index 0000000000..7f654f83f4 --- /dev/null +++ b/files/ru/web/api/node/nodeprincipal/index.html @@ -0,0 +1,28 @@ +--- +title: Node.nodePrincipal +slug: Web/API/Node/nodePrincipal +translation_of: Web/API/Node +--- +
+
{{APIRef("DOM")}}
+{{Non-standard_header}} + +

Свойство Node.nodePrincipal только для чтения, возвращающее объект {{Interface("nsIPrincipal")}}, представляющий текущий контекст безопасности узла.

+ +

{{Note("Это свойство существует во всех узлах (HTML, XUL, SVG, MathML, и т.д.), но только если скрипт пытается использовать chrome привилегии.")}}

+ +

Синтаксис

+ +
principalObj = element.nodePrincipal
+
+ +

Примечания

+ +

Это свойство только для чтения; пытаясь вводить информацию в него, будет сбрасывать исключение.Кроме того, это свойство может быть доступно только для привилегированного кода.

+ +

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

+ +

Нет никакой спецификации.

+
+ +

 

diff --git a/files/ru/web/api/node/nodetype/index.html b/files/ru/web/api/node/nodetype/index.html new file mode 100644 index 0000000000..607596cc83 --- /dev/null +++ b/files/ru/web/api/node/nodetype/index.html @@ -0,0 +1,93 @@ +--- +title: Node.nodeType +slug: Web/API/Node/nodeType +translation_of: Web/API/Node/nodeType +--- +
+
{{APIRef("DOM")}}
+
+ +

Доступное только для чтения свойство Node.nodeType возвращает беззнаковое короткое целочисленное значение, представляющее тип узла.

+ +

Синтаксис

+ +
var type = node.nodeType;
+
+ +

type – беззнаковое короткое целочисленное значение с одним из следующих значений:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValue
ELEMENT_NODE1
ATTRIBUTE_NODE {{deprecated_inline()}}2
TEXT_NODE3
CDATA_SECTION_NODE {{deprecated_inline()}}4
ENTITY_REFERENCE_NODE {{deprecated_inline()}}5
ENTITY_NODE {{deprecated_inline()}}6
PROCESSING_INSTRUCTION_NODE7
COMMENT_NODE8
DOCUMENT_NODE9
DOCUMENT_TYPE_NODE10
DOCUMENT_FRAGMENT_NODE11
NOTATION_NODE {{deprecated_inline()}}12
+ +

Пример

+ +

В примере проверяется, является ли первый узел внутри documentElement узлом комментария, если нет, то выводится сообщение.

+ +
var node = document.documentElement.firstChild;
+if (node.nodeType != Node.COMMENT_NODE)
+  console.log("You should comment your code well!");
+
+ +

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

+ + diff --git a/files/ru/web/api/node/nodevalue/index.html b/files/ru/web/api/node/nodevalue/index.html new file mode 100644 index 0000000000..62655c1875 --- /dev/null +++ b/files/ru/web/api/node/nodevalue/index.html @@ -0,0 +1,86 @@ +--- +title: Node.nodeValue +slug: Web/API/Node/nodeValue +translation_of: Web/API/Node/nodeValue +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.nodeValue возвращает или устанавливает значение текущего узла.

+ +

Синтаксис

+ +
value = node.nodeValue;
+
+ +

value это строка содержащая значение текущего узла, если таковой имеется.

+ +

Примечания

+ +

Для самого документа, nodeValue возвращает null. Для текста, коментария и CDATA узлов, nodeValue возвращает содержимое узла. Для узла атрибута, вернется значение атрибута.

+ +

Следующая таблица, показывает возвращаемые значения различных элементов:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttrЗначение атрибута
CDATASectionСодержимое секции CDATA
CommentСодержимое комментария
Documentnull
DocumentFragmentnull
DocumentTypenull
Elementnull
NamedNodeMapnull
EntityReferencenull
Notationnull
ProcessingInstructionВсе содержимое исключая цель
TextСодержимое текстового узла
+ +

Когда nodeValue равно null, установки не имеют эффекта.

+ +

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

+ + diff --git a/files/ru/web/api/node/normalize/index.html b/files/ru/web/api/node/normalize/index.html new file mode 100644 index 0000000000..03c5d9e044 --- /dev/null +++ b/files/ru/web/api/node/normalize/index.html @@ -0,0 +1,43 @@ +--- +title: Node.normalize() +slug: Web/API/Node/normalize +translation_of: Web/API/Node/normalize +--- +
+
{{APIRef("DOM")}}
+
+ +

Метод Node.normalize() преобразует указанный узел и все его под-деревья в "нормализованный" вид. В нормализованном под-дереве нет ни пустых, ни смежных текстовых узлов.

+ +

Синтаксис

+ +
element.normalize();
+
+ +

Пример

+ +
var wrapper = document.createElement("div");
+
+wrapper.appendChild( document.createTextNode("Part 1 ") );
+wrapper.appendChild( document.createTextNode("Part 2 ") );
+
+// At this point, wrapper.childNodes.length === 2
+// wrapper.childNodes[0].textContent === "Part 1 "
+// wrapper.childNodes[1].textContent === "Part 2 "
+
+wrapper.normalize();
+
+// Now, wrapper.childNodes.length === 1
+// wrapper.childNodes[0].textContent === "Part 1 Part 2 "
+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/ownerdocument/index.html b/files/ru/web/api/node/ownerdocument/index.html new file mode 100644 index 0000000000..5c0fa52e58 --- /dev/null +++ b/files/ru/web/api/node/ownerdocument/index.html @@ -0,0 +1,94 @@ +--- +title: Node.ownerDocument +slug: Web/API/Node/ownerDocument +translation_of: Web/API/Node/ownerDocument +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.ownerDocument только для чтения, возвращающее объект документа верхнего уровня для этого узла.

+ +

Синтаксис

+ +
document = element.ownerDocument
+
+ + + +

Пример

+ +
// given a node "p", get the top-level HTML child
+// of the document object
+
+var d = p.ownerDocument;
+var html = d.documentElement;
+
+ +

Примечание

+ +

Объект document, возвращаемый этим свойством, это основной объект с которым все дочерние узлы в настоящем  HTML документе созданы. Если это свойство используется для узла самого документа, результат будет null.

+ +

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

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatUnknown}}{{CompatUnknown}}6.0 [1]{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

[1] http://msdn.microsoft.com/en-us/library/ie/ms534315(v=vs.85).aspx

+ +

Gecko примечание

+ +

Начиная с Gecko 9.0 {{geckoRelease("9.0")}}, ownerDocument узлы doctype (т.е. для которых {{domxref("Node.nodeType")}} это Node.DOCUMENT_TYPE_NODE или 10) больше не null. Вместо этого,  ownerDocument это документ по которому document.implementation.createDocumentType() будет вызван.

+ +

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

+ + diff --git a/files/ru/web/api/node/parentelement/index.html b/files/ru/web/api/node/parentelement/index.html new file mode 100644 index 0000000000..da4c085552 --- /dev/null +++ b/files/ru/web/api/node/parentelement/index.html @@ -0,0 +1,86 @@ +--- +title: Node.parentElement +slug: Web/API/Node/parentElement +translation_of: Web/API/Node/parentElement +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.parentElement только для чтения, возвращает родителя узла DOM {{domxref("Element")}}, или null если узел не имеет родителя, или его родитель не DOM {{domxref("Element")}}.

+ +

Синтаксис

+ +
parentElement = node.parentElement
+ +

parentElement это родительский элемент текущего узла. Это всегда объект DOM {{domxref("Element")}}, или null.

+ +

Пример

+ +
if (node.parentElement) {
+    node.parentElement.style.color = "red";
+}
+ +

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

+ +

В некоторых браузерах, свойство parentElement определено только для узлов, которые сами {{domxref("Element")}}. В частности, не определено для текстовых узлов.

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая подержка{{CompatVersionUnknown}}{{CompatGeckoDesktop("9.0")}}{{CompatVersionUnknown}} (only on {{domxref("Element")}}){{CompatVersionUnknown}} (only on {{domxref("Element")}}){{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}}{{CompatGeckoMobile("9.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

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

+ + + +

Смотрите также

+ + diff --git a/files/ru/web/api/node/parentnode/index.html b/files/ru/web/api/node/parentnode/index.html new file mode 100644 index 0000000000..139880247f --- /dev/null +++ b/files/ru/web/api/node/parentnode/index.html @@ -0,0 +1,102 @@ +--- +title: Node.parentNode +slug: Web/API/Node/parentNode +tags: + - API + - DOM + - Method +translation_of: Web/API/Node/parentNode +--- +
{{ApiRef}}
+ +

Аннотация

+ +

Возвращает родителя определенного элемента DOM дерева.

+ +

Синтаксис

+ +
parentNode = node.parentNode
+
+ +

parentNode родитель текущего элемента. Родитель элемента является Element узлом, Document узлом, или DocumentFragment узлом.

+ +

Пример

+ +
if (node.parentNode) {
+  // удаляем элемент из дерева
+  node.parentNode.removeChild(node);
+}
+ +

Примечание

+ +

Document и DocumentFragment nodes могут не иметь родителя, в этом случае parentNode всегда возвращает null.

+ +

Так же возвращает null если элемент только был создан и еще не добавлен в DOM дерево.

+ +

Поддержка браузерами

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeInternet ExplorerOperaSafari
Basic support{{CompatGeckoDesktop(1.0)}}0.2{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatGeckoMobile(1)}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

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

+ + + +

См. также

+ + diff --git a/files/ru/web/api/node/prefix/index.html b/files/ru/web/api/node/prefix/index.html new file mode 100644 index 0000000000..f0db5aa76f --- /dev/null +++ b/files/ru/web/api/node/prefix/index.html @@ -0,0 +1,90 @@ +--- +title: Node.prefix +slug: Web/API/Node/prefix +translation_of: Web/API/Node/prefix +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.prefix только для чтения, возвращающее префикс пространства имен указанного узла или null, если не указан префикс. Это свойство только для чтения.

+ +

Синтаксис

+ +
string = element.prefix
+
+ +

Пример

+ +

Следующее выражение выведет "x".

+ +
<x:div onclick="alert(this.prefix)"/>
+
+ +

Примечание

+ +

Это будет работать только когда используется соответствующий парсер пространства имен. т.е. когда документ обработан как XML mime-type. Это не будет роботать для документов HTML.

+ +

Спицификация

+ + + +

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

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatUnknown}} +

{{CompatVersionUnknown}}

+ +

До Gecko 5.0 {{geckoRelease("5.0")}}, это свойство было для чтения-записи; Специфифкация говорит что должно быть, толко для чтения и теперь это так.

+
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
СвойствоAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatUnknown}} +

{{CompatVersionUnknown}}

+ +

До Gecko 5.0 {{geckoRelease("5.0")}}, это свойство было для чтения-записи; Спецификация говорит, что должно быть только для чтения и теперь это так.

+
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
diff --git a/files/ru/web/api/node/previoussibling/index.html b/files/ru/web/api/node/previoussibling/index.html new file mode 100644 index 0000000000..7da55e04c3 --- /dev/null +++ b/files/ru/web/api/node/previoussibling/index.html @@ -0,0 +1,51 @@ +--- +title: Node.previousSibling +slug: Web/API/Node/previousSibling +tags: + - API + - DOM + - Gecko + - Property + - Свойство + - Узел + - Узлы +translation_of: Web/API/Node/previousSibling +--- +
+
{{APIRef("DOM")}}
+
+ +

Свойство Node.previousSibling используется только для чтения, оно возвращает узел предшедствующий указанному в родительском элементе {{domxref("Node.childNodes", "childNodes")}}, или null,  если указанный узел первый в своём родителе.

+ +

Синтаксис

+ +
previousNode = node.previousSibling;
+
+ +

Пример

+ +
// <a><b1 id="b1"/><b2 id="b2"/></a>
+
+alert(document.getElementById("b1").previousSibling); // null
+alert(document.getElementById("b2").previousSibling.id); // "b1"
+
+ +

Примечание

+ +

Браузеры, основанные на Gecko, вставляют текстовые узлы в документ для представления пробелов в разметке. + Поэтому узел, полученный, например, при использовании Node.firstChild или Node.previousSibling может относиться к + пробелу, а не к тому элементу, который автор хотел получить.

+ +

Смотрите Пробел в DOM и + W3C DOM 3 FAQ: Почему некоторые текстовые узлы пустые? + для дополнительной информации.

+ +

Для навигации через список дочерних узлов в обратном порядке используйте Node.nextSibling.

+ +

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

+ + diff --git a/files/ru/web/api/node/removechild/index.html b/files/ru/web/api/node/removechild/index.html new file mode 100644 index 0000000000..738dadbaa6 --- /dev/null +++ b/files/ru/web/api/node/removechild/index.html @@ -0,0 +1,76 @@ +--- +title: Node.removeChild +slug: Web/API/Node/removeChild +tags: + - API + - DOM + - DOM Element Methods + - Method +translation_of: Web/API/Node/removeChild +--- +
{{ApiRef}}
+ +

Аннотация

+ +

Удаляет дочерний элемент из DOM. Возвращает удаленный элемент.

+ +

Синтаксис

+ +
var oldChild = element.removeChild(child);
+element.removeChild(child);
+
+ + + +

Удаленный дочерний элемент остается в памяти, но больше не является частью DOM. Вы можете повторно использовать удаленный элемент с помощью ссылки на объект - oldChild.

+ +

Если child не является дочерним элементом element, тогда метод генерирует исключение. Также это происходит если child является дочерним элементом element во время вызова метода, но был удален во время вызова обработчика событий удаляющего элемент(т.e при удалении элемента непосредственно перед вызовом обработчика событий).

+ +

Пример

+ +
<!-- Пример -->
+
+<div id="top" align="center">
+  <div id="nested"></div>
+</div>
+
+ +
// Удаление элемента с известным родителем
+var d = document.getElementById("top");
+var d_nested = document.getElementById("nested");
+var throwawayNode = d.removeChild(d_nested);
+
+ +
// Удаление элемента без указания его родителя
+var node = document.getElementById("nested");
+if (node.parentNode) {
+  node.parentNode.removeChild(node);
+}
+
+ +
// Удаление всех дочерних элементов
+var element = document.getElementById("top");
+while (element.firstChild) {
+  element.removeChild(element.firstChild);
+}
+
+ +

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

+ + + +

См. также

+ + diff --git a/files/ru/web/api/node/textcontent/index.html b/files/ru/web/api/node/textcontent/index.html new file mode 100644 index 0000000000..479fae01e3 --- /dev/null +++ b/files/ru/web/api/node/textcontent/index.html @@ -0,0 +1,123 @@ +--- +title: Node.textContent +slug: Web/API/Node/textContent +tags: + - API + - Command API + - DOM + - Node + - Property + - Reference +translation_of: Web/API/Node/textContent +--- +

{{ApiRef}}

+ +

Аннотация

+ +

Позволяет задавать или получать текстовое содержимое элемента и его потомков.

+ +

Синтаксис

+ +
var text = element.textContent;
+element.textContent = "Это просто текст";
+
+ +

Описание

+ + + +

Отличие от innerText

+ +

element.innerText был введен Internet Explorer-ом. Работает по тому же принципу за небольшими исключениями:

+ + + +

Отличие от innerHTML

+ +

innerHTML, как можно понять из его названия, возвращает HTML. Довольно часто innerHTML используется для получения или записи текста в элемент. Тем не менее, вместо него желательно использовать textContent: этот метод потребляет гораздо меньше ресурсов, так как текст парсится как текст, а не HTML. Кроме того, это защищает от XSS атак.

+ +

Пример

+ +
// Дан следующий фрагмент:
+//   <div id="block">Это — <span>просто</span> текст</div>
+
+// Достаем текстовое содержимое:
+var text = document.getElementById("block").textContent;
+// В переменной |text| находится: "Это — просто текст".
+
+// Меняем текст:
+document.getElementById("block").textContent = "Это — просто текст";
+// Теперь наш фрагмент выглядит так:
+//   <div id="block">Это — просто текст</div>
+
+ +

Поддержка браузерами

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1+{{CompatVersionUnknown}}9{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

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

+ + + +

Смотрите также

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