Проверка поддержки объекта в JavaScript
Некоторые возможности JavaScript работают только в определенных браузерах,
поэтому использовать эти возможности следует только убедившись, что они доступны
в браузере, в котором пользователь просматривает вашу веб-страницу.
Конечно, можно узнавать, какой именно браузер используется, включая его
версию. Но невозможно учесть все существующие браузеры и браузеры или
версии браузеров, которые появятся после написания вашего скрипта! Универсальный
подход – проверять доступность объекта (метода, свойства и т.д.), который вы
собираетесь использовать.
Например, если в скрипте используется массив document.images, проверим,
поддерживает ли его браузер:
if (document.images) { // использование document.images }
При проверке доступности метода нужно указывать метод без скобок:
if (window.focus)
Эта запись означает: "Если метод focus поддерживается", в то время как запись
if (window.focus())
означает: "Если можно перевести фокус на окно" и предполагает, что этот метод
поддерживается, т.е. потенциально может привести к ошибке. Указав скобки (), вы
фактически выполняете команду. Таким образом, для безопасного выполнения метода
нужно написать:
if (window.focus) window.focus()
Аналогично можно проверить, что в браузере включена поддержка JavaScript.
(По материалам статьи "Object detection")
Уважаемые читатели. С Рождеством христовым хочется вас поздравить. Админу сайта отдельное пожелание-побольше читателей на блоге, креативных интересных статей и всего всего всего :)
А мне пост понрвился. Добавил в букмарки.