1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
---
title: document.getElementById()
slug: Web/API/Document/getElementById
translation_of: Web/API/Document/getElementById
---
<div>{{ ApiRef("DOM") }}</div>
<div> </div>
<p>Возвращает ссылку на элемент по его идентификатору (<a href="/en-US/docs/DOM/element.id" title="en-US/docs/DOM/element.id">ID</a>); идентификатор является строкой, которая может быть использована для идентификации элемента; она может быть определена при помощи атрибута <code>id</code> в HTML или из скрипта.</p>
<h2 id="Syntax">Синтаксис</h2>
<pre class="eval"><em>element</em> = document.getElementById(<em>id</em>);
</pre>
<h3 id="Параметры">Параметры</h3>
<dl>
<dt><strong><code>id </code></strong></dt>
<dd>чувствительная к регистру строка, являющаяся уникальным идентификатором искомого элемента.</dd>
</dl>
<h3 id="Возвращаемое_значение">Возвращаемое значение</h3>
<dl>
<dd>
<p>ссылка на объект типа {{domxref("Element")}} соответствующий указанному ID или <code>null</code>, если элемент с указанным ID не найден в документе.</p>
</dd>
</dl>
<h2 id="Example">Пример</h2>
<pre class="brush: html"><!DOCTYPE html>
<html>
<head>
<title>getElementById example</title>
<script>
function changeColor(newColor) {
var elem = document.getElementById("para1");
elem.style.color = newColor;
}
</script>
</head>
<body>
<p id="para1">Some text here</p>
<button onclick="changeColor('blue');">blue</button>
<button onclick="changeColor('red');">red</button>
</body>
</html>
</pre>
<h2 id="Notes">Замечания</h2>
<p>Начинающим следует знать, что верхний регистр в части имени метода 'Id' <em>должен </em>быть точным для корректного вызова функции; "getElementByID" будет <em>не корректно</em>, как бы естественно это ни казалось.</p>
<p><code>Если элементы с указанным id отсутствуют</code>, функция вернёт null. Заметьте, что параметр id чувствителен к регистру, так <code>document.getElementById("<strong>M</strong>ain")</code> вернёт <code>null</code> вместо элемента <code><div id="<strong>m</strong>ain"></code>, потому что "M" и "m" различны для этого метода.</p>
<p><strong>Элементы вне документа</strong> не ищутся <code>getElementById()</code>. При создании элемента и назначении ему ID, вам следует вставить элемент в дерево документа с помощью {{domxref("Node.insertBefore()")}} или подобным методом, до того как вы сможете получить к нему доступ при помощи <code>getElementById()</code>:</p>
<pre class="brush: js">var element = document.createElement("div");
element.id = 'testqq';
var el = document.getElementById('testqq'); // el will be null!
</pre>
<p><strong>Не-HTML документы</strong>. Релизация DOM должна содержать информацию, сообщающую о том, какие атрибуты являются идентификаторами. Атрибуты с именем "id" не являются идентификаторами только если это не указано в описании типа документа (DTD). Атрибут "id" определён в качестве идентификатора в общих случаях <a href="/en-US/docs/XHTML" title="en-US/docs/XHTML">XHTML</a>, <a href="/en-US/docs/XUL" title="en-US/docs/XUL">XUL</a>, и других. От реализаций, которые не знают, какой атрибут является идентификатором, ожидается возврат null.</p>
<h2 id="Specification">Спецификация</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Спецификация</th>
<th scope="col">Статус</th>
<th scope="col">Комментарий</th>
</tr>
<tr>
<td>{{SpecName('DOM1','level-one-html.html#method-getElementById','getElementById')}}</td>
<td>{{Spec2('DOM1')}}</td>
<td>Исходное определение интерфейса</td>
</tr>
<tr>
<td>{{SpecName('DOM2 Core','core.html#ID-getElBId','getElementById')}}</td>
<td>{{Spec2('DOM2 Core')}}</td>
<td>Заменяет DOM 1</td>
</tr>
<tr>
<td>{{SpecName('DOM3 Core','core.html#ID-getElBId','getElementById')}}</td>
<td>{{Spec2('DOM3 Core')}}</td>
<td>Заменяет DOM 2</td>
</tr>
<tr>
<td>{{SpecName('DOM WHATWG','#interface-nonelementparentnode','getElementById')}}</td>
<td>{{Spec2('DOM WHATWG')}}</td>
<td>Должен заменить DOM 3</td>
</tr>
</tbody>
</table>
<h2 id="Browser_Compatibility">Совместимость в браузерах</h2>
<p>{{Compat}}</p>
<h2 id="See_also">Смотрите также</h2>
<ul>
<li>{{domxref("Document")}} ссылка для иных методов и свойств которые вы можете использовать для получения ссылок на иные элементы.</li>
<li>{{domxref("Document.querySelector()")}} <span class="short_text" id="result_box" lang="ru"><span>для выборки по таким запросам, как</span></span> <code>'div.myclass'</code></li>
<li><a href="/en-US/docs/xml/xml:id" title="en-US/docs/xml/id">xml:id</a> - <span id="result_box" lang="ru"><span>имеет метод, позволяющий getElementById() получать «xml: id» в XML-документах (например, возвращаемые вызовами Ajax)</span></span></li>
</ul>
|