- •14. Динамический html и Объектная Модель Документа
- •Программный доступ к элементам
- •Объект window
- •Объект navigator
- •Объект location
- •Объект history
- •Объект screen
- •Коллекция frames
- •Некоторые методы объекта window
- •Объект document
- •Коллекция forms
- •Свойство cookie
- •Поиск элемента по id
- •Поиск групп элементов
- •Программное создание, удаление и модификация html-элементов
- •Вопросы
Объект navigator
Объект navigator содержит информацию о браузере. Все его свойства доступны только по чтению и могут использоваться для программного определения свойств и методов, доступных в том или ином браузере.
userAgent содержит строку, которая передается в HTTP заголовке на веб-сервер с каждым запросом. Эта строка содержит информацию о самом браузере и его версии, операционной системе и ее версии и некоторую дополнительную информацию. Пример:
document.write(navigator.userAgent);
/*
Результат в Internet Explorer 8.0
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.4;
.NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1;
.NET CLR 3.0.04506.648; .NET CLR 3.5.21022; InfoPath.2; .NET CLR 3.0.4506.2152;
.NET CLR 3.5.30729; OfficeLiveConnector.1.3; OfficeLivePatch.0.0)
*/
/*
Результат в Mozilla Firefox 3.6
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)
*/
/*
Результат в Apple Safari
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU)
AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9.1
*/
appName содержит имя браузера – "Microsoft Internet Explorer" или "Netscape" для многих других браузеров.
appCodeName – "Mozilla" для большинства браузеров
appVersion, appMinorVersion, platform, systemLanguage и другие содержат информацию о версии браузера и операционной системы, языковые настройки и другое.
Объект location
Объект location содержит полную информацию об адресе (Universal Resource Locator, URL) открытой страницы. Доступны также все отдельные детали URL, такие как протокол передачи данных, имя сервера, порт, через который осуществляется доступ, путь к файлу на сервере, строка запроса и закладка внутри страницы. Рассмотрим для примера следующий адрес: http://www.MyServer.ru:80/examples/samplecodes.aspx?code=html&level=1#location.
href содержит всю строку URL (http://www.MyServer.ru:80/examples/samplecodes.aspx?code=html&level=1#location)
protocol – протокол передачи данных (http:)
host – имя сервера + порт (www.MyServer.ru:80)
hostname – имя сервера (www.MyServer.ru)
port – порт (80)
pathname – путь (/examples/samplecodes.aspx)
search – строка запроса (?code=html&level=1)
hash – закладка, ссылка внутри страницы (#location)
Свойство href является свойством по умолчанию. Две следующие инструкции идентичны.
location = 'http://www.microsoft.com';
window.location.href = 'http://www.microsoft.com';
Присвоение значения объекту location (как в приведенном примере) немедленно открывает заданный URL в текущем окне.
Объект history
Объект history (история) содержит информацию об адресах, посещенных пользователем с момента открытия браузера. Из соображений безопасности действительные адреса недоступны, имеются лишь три метода для перемещения по индексу на страницу относительно текущей.
back() – переход на предыдущую страницу. Эквивалентно нажатию кнопки "Назад" в браузере.
forward() – переход на следующую страницу. Эквивалентно нажатию кнопки "Вперед" в браузере.
go(N) – переход на N позиций в индексе. history.go(-1) эквивалентно history.back(), history.go(1) эквивалентно history.forward(). При попытке выйти за границы индекса не возникает ошибки; браузер остается на текущей странице.
