базовый курс

ГРУППА КУРСА

Работа с браузером

Как говорилось в одной из прошлых тем, BOM представляет браузер в виде объектов и позволяет работать с браузером. Он позволяет языку JavaScript определить браузер и узнать о нём различную информацию, а таже открывать новые страницы и вкладки.

Метод window.open() открывает в браузере новую вкладку и загружает в неёстраницу с указанным в параметрах адресом.

window.open (URL, имя, параметры окна);

Параметры:

URL - адрес страницы, которая должна быть загружена

имя - имя вкладки. Используется для взаимодействия со страницей, открывшей вкладку

параметры окна - строка, содержащая параметры нового окна

Обязателен только первый параметр.

Когда этот метот создавался, то он открывал новое окно браузера. Но современные браузеры, в основном, открывают именно вкладку. Хотя есть возможность и создать новое окно.

В работе данного метода есть ограничение - он срабатывает, если запускается в результате действий пользователя. Если он запускается автоматически без участия пользователя, то браузеры обычно блокируют всплывающее окно. Это делается для того, чтобы не загружались различные нежелательные страницы.

Создадим страницу и откроем из неё новую вкладку:

+
1
2
3
4
5
6
7
8
<!DOCTYPE html>
<html>
<head>
<title>Страница</title>
<meta charset="utf-8">
</head>
<body>
<script>
9
window.open('https://yandex.ru');

Чтобы открыть новое окно, а не вкладку, нужно указать параметры окна. Их достаточно много, но некоторые работают не во всех браузерах. Поэтому я назову только основные.

left - смещение левого края окна относительно левого края экрана

top - смещение верхнего края окна относительно верхнего края экрана

width - ширина окна

height - высота окна

menubar - меню браузера

toolbar - панель навигации

location - адресная строка

resizable - возможность изменения размеров

scrollbars - полосы прокрутки

Смещение и размеры окна указаваются в пикселях. Существует ограничение на минимальные размеры. Для остальных параметров указываются значения yes или no. Скрыть адресную строку можно не во всех браузерах. Параметры перечисляются через запятую без пробелов.

Пример:

9
window.open('https://yandex.ru', 'newwin', 'left=70,top=30,width=600,height=400,scrollbars=yes');

Объект location осуществляет доступ к URL-адресу страницы. Пример:

10
document.write (location);

Если запустить страницу на обычном компьютере, то метод просто выведет путь к файлу страницы. Вместо символов русского алфавита в некоторых браузерах может быть длинный непонятный текст. Именно такой вид имеют адреса, содержащие русские буквы.

Чтобы загрузить в текущую вкладку новую страницу, можно указать объекту location адрес этой страницы:

11
location = 'http://basecourse.ru';

Объект navigator позволяет определить браузер и операционую систему. Свойство appName содержит имя браузера, а appVersion версию браузера. Однако, современные браузеры работают таким образом, что с помощью этих свойств невозможно получить точные данные о браузере. Есть свойство userAgent, которое возвращает сложную строку и из неё в дальнейшем можно получить браузер и версию.

Свойство platform возвращает информацию об операционной системе.

Добавим код, который определяет браузер и операционную систему и выводит эти данные на страницу:

11
12
document.write('<br>'+navigator.userAgent); 
document.write ('<br>'+navigator.platform);