Wiki-учебник по веб-технологиям: JavaScript/Полеlocation ...

Главная | |

Поле location


В поле location отображается URL загруженного документа. Если пользователь хочет вручную перейти к какой-либо странице (набрать ее URL), он делает это в поле location.

Вообще говоря, Location — это объект. Из-за изменений в версиях JavaScript класс Location входит как подкласс и в класс Window, и в класс Document. Мы будем рассматривать Location только как window.location. Кроме того, Location — это еще и подкласс класса URL, к которому относятся также объекты классов Area и Link. Location наследует все свойства URL, что позволяет получить доступ к любой части схемы URL.

Рассмотрим характеристики и способы использования объекта Location:

Как мы видим, список характеристик объекта Location неполный.

Свойства


Предположим, что браузер отображает страницу, расположенную по адресу:

http://intuit.ru:80/r/dir/page?search#mark

Тогда свойства объекта Location примут следующие значения:

window.location.href = http://intuit.ru:80/r/dir/page?search#mark
window.location.protocol = http;
window.location.hostname = intuit.ru;
window.location.host = intuit.ru:80;
window.location.port = 80
window.location.pathname = /r/dir/;
window.location.search = search;
window.location.hash = mark;

Методы


Методы Location предназначены для управления загрузкой и перезагрузкой страницы. Это управление заключается в том, что можно либо перезагрузить документ (reload), либо загрузить (replace). При этом в историю просмотра страниц (history) информация не заносится:

window.location.reload(true);
window.location.replace('#top');

Метод reload() полностью моделирует поведение браузера при нажатии на кнопку Reload в панели инструментов. Если вызывать метод без аргумента или указать его равным true, то браузер проверит время последней модификации документа и загрузит его либо из кеша (если документ не был модифицирован), либо с сервера. Такое поведение соответствует простому нажатию на кнопку Reload.

Если в качестве аргумента указать false, то браузер перезагрузит текущий документ с сервера, несмотря ни на что.

Чтобы не возникло проблем с безопасностью браузера, путешествовать по History можно, только используя индекс URL. При этом URL, как текстовая строка, программисту недоступен. Чаще всего этот объект используют в примерах или страницах, на которые могут быть ссылки из нескольких разных страниц, предполагая, что можно вернутся к странице, из которой пример будет загружен:

<FORM><INPUT TYPE=button VALUE="Назад" onClick=history.back()></FORM>


Данный код отображает кнопку «Назад», нажав на которую мы вернемся на предыдущую страницу.