У меня есть веб-сайт, который «в настоящее время» разработан и протестирован для работы только в Firefox. Если пользователь пытается открыть его в другом браузере, я хочу показать всплывающее окно с надписью «Этот сайт лучше всего работает с Mozilla Firefox. Мы прилагаем все усилия чтобы добавить поддержку для вашего любимого браузера. Тем не менее, попробуйте его с Firefox. "

Можем ли мы предоставить кнопку, при нажатии которой в Firefox откроется одно новое окно с предварительно заданным URL-адресом? а также говорит нам, если Firefox не доступен в своем местоположении по умолчанию?

Спасибо, Сурабх

4
Sourabh 4 Июн 2010 в 15:27

3 ответа

Лучший ответ

Если вы сделаете свой сайт соответствующим стандартам, шансы довольно высоки, он будет работать в браузерах на базе Firefox, Opera и WebKit (Safari, Chrome) без необходимости использования большого количества кода, специфичного для браузера. Проблема, как обычно, с IE. Чтобы добиться наилучших результатов, напишите веб-сайт для браузеров, соответствующих стандарту, а затем добавьте хаки, чтобы он работал в IE.

Вы не можете ни обнаружить установленные приложения на клиентском компьютере, ни запустить ни одно из них - из-за безопасности. Все, что вы можете сделать, это сделать анализ браузера. Вы можете сделать это на стороне сервера (изучив заголовок User-Agent) или на стороне клиента (используя JavaScript для проверки объекта window.navigator). Это довольно сложно и подвержено ошибкам, хотя и, конечно, несовместимо (будущие версии браузера могут запутать ваши скрипты). Кроме того, пользователи могут изменить идентификацию своего браузера. Когда вы обнаружите неподдерживаемый браузер, вы можете отобразить всплывающее окно с просьбой переключить браузер.

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

5
el.pescado 4 Июн 2010 в 11:48

Вы не можете проверить доступность Firefox или запустить его с помощью JavaScript. Это создаст большие дыры в безопасности ...

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

4
Marcel Korpel 4 Июн 2010 в 11:30

Если он работает только в одном браузере, это не веб-сайт.

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

Однако если вам нужно обнаружить браузер пользователя , вы можете посмотреть на QuirksMode. У Mozilla есть статья об обнаружении браузера и связанных с этим проблемах.

Лучшей альтернативой обнаружению в браузере будет обнаружение функций, и Modernizr очень хорош в этом.

-1
Joe Ratzer 1 Фев 2013 в 14:25