как определить в каком браузере запущен сайт у пользователя

Как узнать браузер пользователя в JavaScript

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Существует достаточно большое количество браузеров, а также их версий. И проблема в том, что одни браузеры позволяют выполнить определённый скрипт, а другие не позволяют. Встаёт вопрос: а как узнать браузер пользователя в JavaScript, чтобы через условие решить: надо выполнять скрипт или нет. И о том, как определить имя и версию браузера пользователя я и напишу в этой статье.

Для таких целей существует объект Navigator, а точнее два его свойства: appName и appVersion. Давайте для начала выведем название браузера пользователю:

document.write(«Вы используете браузер » + navigator.appName);

В результате Вы увидите имя браузера пользователя. Также огромное значение оказывает не только сам браузер, но и его версия. И для таких случаев используется свойство appVersion:

document.write(«Версия Вашего браузера » + navigator.appVersion);

Свойства appName и appVersion доступны только для чтения (это и логично), поэтому изменить их у Вас не получится. Теперь встаёт вопрос, а как использовать их в операторе IF:

var browser = navigator.appName;
if (browser == «NetScape»)
document.write(«Тут можно выполнять скрипты для обладателей браузеров NetScape»);

Надеюсь, что я ответил на Ваш вопрос: «Как узнать имя и версию браузера в JavaScript«.

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

Комментарии ( 10 ):

И для FFox напишет Netscape

Для отличий от FF и Netscape можно использовать это свойство: window.navigator.userAgent

У меня та же фигня! Тестирую в Google Chrome, сначала написал navigator.appName мне написало, что я сижу через NetScape, потом поменял на window.navigator.userAgent мне написал, что я сижу через Mozila. Что за фигня и как это исправить?

Проблем при определении браузера много, чтобы узнать, что это chrome, нужно анализировать navigator.appVersion. Для других браузеров могут быть другие свойства (appName или appCodeName).

Ну и как это сделать?

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

Ну я уже понял как.

С navigator.appName только Opera и IE нормально работают, остальные пишут NetScape, а с window.navigator.userAgent только Opera, остальные пишут Mozila

Я думаю, что скрипт выдаёт Netscape потому что очень много браузеров основано на Netscape. В том числе и FF, последние версии Netscape полностью основаны на FF, и, по сути, являются слегка переделанными FF. Вот тут http://detectmobilebrowsers.com/ есть скрипты для определения мобильных браузеров. Там прописаны почти все возможные браузеры)

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

Copyright © 2010-2021 Русаков Михаил Юрьевич. Все права защищены.

Источник

Определение браузера в JavaScript с примером кода

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователяИтак, мы увидели, что каждый браузер имеет свои особенности. А так ли это важно? Очень важно. Загрузив Web-страницу со сценарием, в котором со­держатся не поддерживаемые браузером свойства, пользователь попросту не увидит ваш замысел. Существуют два подхода к решению проблемы совмес­тимости браузеров. Первый подход немного утомительный. Разработчик пи­шет два варианта для разных браузеров и затем, на основе полученной ин­формации, направляет пользователя на нужную Web-страницу. Вот небольшой пример такого сценария (листинг 1).

Листинг 1. Перенаправление пользователя на нужную Web-страницу

Листинг 2. Другой способ определения браузера

Хорошая новость для разработчиков. Браузер Mozilla Firefox поддерживает оба эти свойства.

Обратите внимание, что нам нет острой необходимости помнить всю воз­вращаемую строку. С помощью функции i ndexOf мы определяем позицию в строке одного слова. Этого вполне достаточно, чтобы сценарий был работоспо­собным. Только не забывайте, что не только Mozilla Firefox имеет имя приложе­ния Netscape. Существует, к примеру, еще и браузер Netscape Navigator (есть ли еще есть. ).

Хотя мы с вами договорились, что в моем блоге все примеры тестируются только на Internet Explorer и Mozilla Firefox, я все-таки приведу не­большой пример определения версии используемого браузера. Немного тео­рии. Написать полностью универсальную функцию, определяющую браузер, установленный у пользователя, невозможно. Слишком много их развелось, и у каждого разработчика браузера свое видение объектной модели. Можно остановиться только на самых популярных и пренебречь остальными.

Листинг 3. Еще один пример определения браузеров

Я привел только маленький кусочек кода сценария. Применение этого кода в реальной программе останется вам в качестве домашнего задания.

Источник

Скрипт определения браузера пользователя

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Приветствую, вас дорогой читатель!

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

Навигация по статье:

Для чего нужно определять браузер пользователя?

К сожалению не все браузеры одинаково отображают и поддерживают некоторые CSS свойства, к тому же у них немного отличаются алгоритмы расчёта ширины элемента, особенно если используются десятичные значения ширины или шрифта. Помимо этого они могут по разному отображают шрифты (особенно если вы используете у себя на сайте нестандартный шрифт).

Например, в Mozilla Firefox шрифт отображается более жирным, чем в Opera или Chrome, поэтому одна и та же кнопка с одной и той же надписью может иметь разное значение ширины в этих браузерах.

Из за этих особенностей порой бывает сложно добиться одинакового отображения вёрстки во всех браузерах (кроссбраузерности).

Одним из решений данной проблемы является использование так называемых CSS хаков, подробнее о которых я рассказывала в предыдущей статье.

Но у этого решения есть несколько минусов:

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

Как работает скрипт для определения браузера?

В самом конце страницы перед закрытием тега

Источник

Форум

Справочник

Функция определения браузера и его версии

Как-то потребовалось создать функцию, принимающую объект json со следующим форматом записи: «браузер»:то, что следует вернуть, иначе говоря такую функцию, которая бы возвращала указанный объект в зависимости от браузера пользователя.

ТЗ, которое я для себя определил:

Мой способ гарантированно не самый точный, так как он используют свойство userAgent объекта navigator, которое при желании подделывается, но с другой стороны любой способ проверки клиента как серверный, так и клиентский можно обойти. Так же встает вопрос о надобности такой «подделки», тем более мало какие роботы исполняют javascript код.

После изучения следующей статьи http://ru.wikipedia.org/wiki/Useragent, я написал функцию ifBrowser. Она поддерживает проверку следующий браузеров: Internet Explorer, Firefox, Opera, Chrome, Safari, Konqueror, Iceweasel, SeaMonkey.

В случае если ни одного выражение не совпадает с браузером пользователя, возвращается «none», которое можно также указать как свойство передаваемого объекта.

Пример использования: (данный код повернет на 25 градусов все содержимое страницы в любом современном браузере)

Название браузера нужно вводить в следующем формате : ie, firefox, opera, chrome, safari, konqueror, iceweasel, seamonkey. Регистр неважен. Версия пишется слитно с название, пример: ie7. Если для нескольких браузеров должно возвратиться одно и тоже значение, вы просто указываете их через пробел, как
на примере («chrome safari»:»WebkitTransform»). В качестве возвращаемого значения может выступать любой объект JavaScript (строка, число, функция, логическое значение и т.д.)

Зачем проверять версию браузера и юзерагент, когда надо проверять то, что он умеет. Тем более, что ваш код даст огромную погрешность. Да и многие браузеры неправильно отдают свой агент.

Я перечислил какие браузеры поддерживаются, они не будут «неправильно» отдавать свой юзер-агент. И версия для каждого браузера определяется по индивидуальному правилу. Мне так же интересно, как вы будете проверять то, что умеет браузер, с большей пользой, когда любое свойство можно подменить, как и юзер-агент.

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

юзерагент без затей меняется, например в фаерфоксе без всяких бубнов, в системных параметрах браузера. к сожалению предложенный вами способ ненадежен и необъективен

И что?) Кому это нужно?) С таким же успехом можно подделать любое свойство в javascript’е. Например, только в google chrome у объекта window есть свойство chrome, и многие именно так определяют браузер (вообще не важно какое свойство подменять, я просто привел пример). Подменяем: window.chrome = <>. Теперь программа будет думать, что пользователь использует гугл хром. Вот только все равно не понятно, зачем пользователю это нужно. Если пользователь достаточно грамотный, и меняет юзер агент браузера, то он соответственно понимает, что делает) Вы же не сможете защить свой сайт от того, что какой-то пользователь решил подключить к браузеру плагин удаляющей определенный контент со страницы, или от того, что пользователь пару dom-элементов удалил через консоль того же хрома.

В Opera он тоже легко подменяется в параметре Custom User Agent в opera:config. Там же меняется и navigator.appName.

судя по скрипту, он ищет непонятно где, не ясно что. где сам источник версии браузера, откуда берутся аргументы?

Спасибо! Везде работает кроме IE. как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя😀 как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя(ie 6-ка)
IE Стабилен, как всегда как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Спасибо за понятный и прозрачный код.

Не понимаю зачем было разводить флейм на тему ненадежности метода. 90% пользователей вообще не знают про строку юзерагента, а те, кто знают, изменяя эту строку, сами себе становятся злобными буратинами.

Автору зачет, респект и уважуха.

Спс большое за мануал!

вах вах вах. в IE10 зер гуд как работает у меня. Вот в IE11 не работает. Пришлось немного отсебятины сделать.

Author thank you very much!

Вот, переделал под современные реалии и улучшил юзабилити:

Результат выполнения функции:

Определение мобильных браузеров не поддерживается, но для них возвращается platform: «mobie».

Konqueror, Iceweasel, SeaMonkey выкинул за ненадобностью. Кому нужно их определять в 2016 году даже представить не могу.

Источник

Определение браузера пользователя через PHP

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Для определения браузера пользователя в PHP есть массив $_SERVER, у которого есть элемент с ключом HTTP_USER_AGENT:

Вот так легко определить, какой браузер у пользователя через PHP, а дальше можно, например, подгрузить определённые стили для конкретного браузера, или даже его версии.

как определить в каком браузере запущен сайт у пользователя. Смотреть фото как определить в каком браузере запущен сайт у пользователя. Смотреть картинку как определить в каком браузере запущен сайт у пользователя. Картинка про как определить в каком браузере запущен сайт у пользователя. Фото как определить в каком браузере запущен сайт у пользователя

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

Комментарии ( 26 ):

Зачем эта статья если таковая уже есть? http://myrusakov.ru/php-var-server.html А сделать условие(if-else) думаю может каждый, кто хоть немного знает PHP

Часто это спрашивают, а всё потому, что та статья написана о другом, а эта возможность упомянута там вскользь, и люди её просто не видят (как и саму статью). А теперь я буду целенаправленно отправлять сюда пользователей, чтобы максимально подробно давать ответ на данный вопрос.

Таких способов не существует. Ограничения по IP более, чем достаточно. А с куками будет ещё больше проблем у накрутчика. Тут надо понимать, что кто захочет, тот всегда накрутит. Но это вряд ли кому-то будет нужно. А от единичных бездельников, которые проголосуют 5 раз, вместо 1-го, потратив на это время в поиске новых и новых прокси, никакого вреда не будет.

Вообще не догоняю зачем Вам это нужно то было? И вообще какой от этого смысл. Нечем людям заняться.

Я Имел ввиду зачем Вам было нужно 500+ раз голосовать за 7 часов? Какой вам от того был толк? Типа спамера?

Я имел ввиду и защиту по IP, и защиту по кукам. А не только по кукам. А что касается автокликеров, поставьте капчу. Понятно, что и её можно расшифровать, но не существует 100% защиты. А если голосование очень важное, то не надо его делать для всех желающих, сделайте только для зарегистрированных пользователей. В конце концов, не забывайте про математическую статистику. Если ежедневно было по 10-20 голосов, а потом вдруг было их 500, то очевидно, что это накрутка. Определяете, за что голосовали, и удаляете эти 500 голосов.

Зачем фигурные скобки? Это же не smarty.

Та хоч printf(«Ваш браузер:%s»,$browser); нічого не міняється крім функцій і синтаксису

Ну,не совсем так.Типы клиентов разные)

К сожалению с новой оперой такой вариант не канает((( выводит что она гугл хром, кто знает как исправить.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *