Содержание
Рано или поздно встаёт вопрос о работе с ссылками на ресурсы – URLами. Прежде чем переходить к встроенным методам JavaScriptпри работе с «урлами», давайте разберемся, из чего они состоят.
Строение URL
URL-адрес декомпозируется на небольшие фрагменты, с каждым из которых нужно уметь работать. Далее подразумевается, что вы знакомы с частями URL-адреса.
Получить адрес страницы
JavaScript предоставляет свойство location глобального объекта document для работы с url:
document.location.href// вернет полный url страницы
document.location.protocol// вернет протокол страницы
document.location.hash// вернет hash страницы
document.location.search// вернет поисковой запрос URL-а
Обратите внимание: каждая часть URL возвращается в виде строки!
Получить адрес с помощью JQuery можно с помощью объекта location:
$(location).attr(‘href’);
В метод attr мы передаем свойство объекта location href, тем самым получаем полный URL.
Открыть новую страницу
Метод объекта windowпод названием open открывает новую страницу:
window.open(url,windowName,[windowParameters]);
- url – ссылка на открываемую страницу
- window Name – в какой вкладке открывать новую страницу
- объект window Parameters необязательный, с его помощью можно указать параметры открываемого окна – например, высоту и ширину.
Пара практических примеров:
window.open(«http://site.ru/»,»_self»);// открываем окно в текущей вкладке
window.open(«http://site.ru/»,»_blank»);// открываем окно в новой вкладке
Переадресации страницы на JavaScript
На помощь спешит все тот же метод location объекта document, а точнее его свойство replace. В качестве параметра принимает строку URL, на которую будет произведена переадресация:
window.location.replace(‘http://hostname.ru’);
Перезагрузка страницы на JavaSscript
На этот раз пользуемся встроенным методом поля location, но уже объекта window:
window.location.reload()
Создание URL и получение его фрагментов
Из коробки JavaScript предлагает встроенный класс URL. Он предоставляет методы работы с частями URL-адреса, рассмотренного в пункте выше. Рассмотрим синтаксис создания объекта URL:
leturl=newURL(url,[base])
Рассмотрим параметры конструктора URL:
- url – непосредственно URL-адрес, строка
- base – «базовый урл»: если указать, то url будет относительно него
leturl=new URL(‘https://hostname/url?query=JavaScript’);
alert(url.protocol);// https:
alert(url.host);// hostname
alert(url.pathname);// /url