Как мне заставить веб-страницу отображать, на какой платформе и в каком браузере она просматривается?

#language-agnostic

#язык-агностик #не зависит от языка

Вопрос:

Мне нужна веб-страница для отображения, если она просматривается на ПК / Mac, iphone и т. Д., А также в каком браузере она запускается. Кто-нибудь знает, как бы я это сделал?

Ответ №1:

Обычно вы получаете эту информацию через User-agent: HTTP-заголовок, отправляемый вашим браузером. Если бы вы использовали PHP, вы бы получили это, прочитав $_SERVER['HTTP_USER_AGENT'] . PHP также имеет API более высокого уровня [get_browser][1] для чтения этих данных.

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

Ответ №2:

Вы можете сделать это с помощью серверного кода, если страница генерируется динамически. Например, если вы используете PHP, вы можете использовать функцию get_browser() . Другой язык должен иметь аналогичные возможности через заголовок User-Agent, отправляемый браузером.

Вы также можете сделать это на стороне клиента в Javascript. Некоторые подробности об этом процессе можно найти здесь: http://www.quirksmode.org/js/detect.html

Ответ №3:

Ответ №4:

Самый простой способ — использовать Javascript, а самый простой способ использовать Javascript — использовать библиотеку, подобную jQuery. В jQuery есть флаги обнаружения .browser, которые дадут вам то, что вы ищете.

jQuery.support: возможности, зависящие от браузера (предпочтительно)

jQuery.browser: идентификатор браузера (устарел)

Примечания:

  1. Вы можете попытаться определить «тип браузера» либо на клиенте (веб-браузере), либо на сервере (например, IIS или Apache; в .Net или PHP).

  2. Простое чтение «тип браузера» (например, из возвращаемой переменной http) довольно часто бывает неточным. Лучшая стратегия — «исследовать» тип браузера, используя разные эвристики. jQuery упрощает это для вас.

  3. Лучшей стратегией по-прежнему является определение ВОЗМОЖНОСТЕЙ браузера, а не «тип браузера». jQuery также упрощает это.

«Надеюсь, это поможет!