с информацией о версии и производителе броузера, объект Navigator имеет еще несколько свойств и методов. В число стандартных и часто реализуемых нестандартных свойств входят:
onLine
Свойство
navigator.onLine
(если существует) определяет, подключен ли броузер к сети. Приложениям может потребоваться сохранять информацию о состоянии локально (с использованием приемов, описываемых в главе 20), если броузер не подключен к сети.
geolocation
Объект
Geolocation
, определяющий API для выяснения географического положения пользователя. Подробнее об этом рассказывается в разделе 22.1.
javaEnabled
Нестандартный метод, который должен возвращать
true
, если броузер способен выполнять Java-апплеты.
cookiesEnabled
Нестандартный метод, который должен возвращать
true
, если броузер способен сохранять cookies. Если броузер настроен на сохранение cookies только для определенных сайтов, этот метод может возвращать некорректное значение.
14.4.2. Объект Screen
Свойство
screen
объекта
Window
ссылается на объект
Screen
, предоставляющий информацию о размере экрана на стороне пользователя и доступном количестве цветов. Свойства
width
и
height
возвращают размер экрана в пикселах. Свойства
availWidth
и
availHeight
возвращают фактически доступный размер экрана; из них исключается пространство, требуемое для таких графических элементов, как панель задач. Свойство
colorDepth
возвращает количество битов на пиксел, определяющих цвет. Типичными значениями являются 16, 24 и 32.
Свойство
window.screen
и объект
Screen
, на который оно ссылается, являются нестандартными, но они реализованы практически во всех броузерах. Объект
Screen
можно использовать, чтобы определить, не выполняется ли веб-приложение на устройстве с маленьким экраном, таком как нетбук. При ограниченном пространстве экрана, например, можно было бы использовать шрифты меньшего размера и маленькие изображения.
14.5. Диалоги
Объект Window обладает тремя
методами для отображения простейших диалогов. Метод alert выводит сообщение и ожидает, пока пользователь закроет диалоговое окно. Метод confirm предлагает пользователю щелкнуть на кнопке ОК или Cancel (Отмена) и возвращает логическое значение. Метод prompt выводит сообщение, ждет ввода строки пользователем и возвращает эту строку. Ниже демонстрируется пример использования всех трех методов:
do {
var name = prompt("Введите ваше имя"); // Вернет строку
var correct = confirm("Bы ввели '" + name + '".\n" + // Вернет логич. знач.
"Щелкните ОК, чтобы продолжить, " +
"или Отмена, чтобы повторить ввод.");
} while(!correct)
alert("Привет, " + name); // Выведет простое сообщение
Методы
alert, confirm
и
prompt
чрезвычайно просты в использовании, но правила хорошего дизайна требуют, чтобы они применялись как можно реже. Диалоги, подобные этим, нечасто используются в Веб, и большинство пользователей сочтет диалоговые окна, выводимые этими методами, выпадающими из обычной практики. Единственный вариант, когда имеет смысл обращаться к этим методам, - это отладка. JavaScript-программисты часто вставляют вызов метода
alert
в программный код, пытаясь диагностировать возникшие проблемы.
Обратите внимание, что текст, отображаемый методами
alert, confirm
и
prompt
в диалогах, - это обычный неформатированный текст. Его можно форматировать только пробелами, переводами строк и различными знаками пунктуации.
Методы
confirm
и
prompt
являются блокирующими, т.е. они не возвращают управление, пока пользователь не закроет отображаемые ими диалоговые окна. [32]
32
Обычно такие окна называют модальными. – Прим, науч.ред.
Это значит, что, когда выводится одно из этих окон, программный код прекращает выполнение, и текущий загружаемый документ, если таковой существует, прекращает загружаться до тех пор, пока пользователь не отреагирует на запрос. В большинстве броузеров метод alert также является блокирующим и ожидает от пользователя закрытия диалогового окна, но это не является обязательные требованием. Полное описание этих методов приводится в справочных статьях