страница 80
Значение некоторых свойств может быть изменено в процессе загрузки документа и взаимодействия пользователя со страницей. Рассмотрим такой пример с использованием дескриптора описания текстового поля.
<input type="text" id="entry" name="entry" value="User Name?">
Свойства id и name данного объекта имеют значение entry. Когда происходит загрузка страницы, текстовое значение атрибута value будет выведено в текстовом поле. Это пример поведения текстового поля в HTML с использованием атрибута value. Но если пользователь введет в текстовое поле что-то другое, то значение свойства value изменится - однако не в HTML, а в поддерживаемой браузером копии объектной модели, хранящейся в памяти. Поэтому, если сценарий обращается к текстовому полю с целью получения значения свойства value, браузер выдаст текущее значение свойства. В случае если пользователем вносились изменения в текст, то это будет далеко не то значение, что указано в коде HTML.
Для получения доступа к свойству объекта используется тот же тип синтаксиса с использованием точек, что и в иерархической структуре, описанной ранее для объектов. Каждое свойство принадлежит своему объекту, а ссылка на свойство состоит из ссылки на данный объект плюс еще одно дополнительное расширение, указывающее на нужное свойство. Поэтому для описанных выше дескрипторов кнопок и текстовых объектов ссылки на различные их свойства выглядят так.
document.getElementById("clicker").name
document.getElementById("clicker").value
document.getElementById("entry").value
Отсутствие в ссылке указателя на window может вызвать удивление. Как уже отмечалось, одно окно может содержать только один документ. Поэтому при ссылке на объект внутри документа вы можете не использовать указатель window в ссылке - начинайте сразу с document. Тем не менее, пропустить в ссылке указатель на document нельзя.