GWT предупреждение о неподдерживаемом браузере - PullRequest
4 голосов
/ 06 июня 2009

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

Какой лучший способ сделать это?

Ответы [ 4 ]

2 голосов
/ 09 июня 2009

GWT также обеспечивает обнаружение браузера с помощью файла .gwt.xml. Посмотрите на это:

http://code.google.com/p/google-web-toolkit-doc-1-5/wiki/DevGuideDeferredBindingReplacement

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

1 голос
/ 08 июня 2009

Команда GWT не предоставляет список неподдерживаемых браузеров, только поддерживаемых браузеров, и это "расплывчатый список" последних версий Internet Explorer, Firefox и Safari . (Опера тоже большую часть времени.) ".

Если вы хорошо знаете, какой браузер / версия не будет работать, вы можете использовать этот код :

  public static native String getUserAgent() /*-{
     return navigator.userAgent.toLowerCase();
  }-*/

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

С другой стороны, рендеринг веб-страниц в браузере может дать сбой многими тонкими способами, от умеренно раздражающего до катастрофического, и зачастую нет способа узнать, где ваша страница находится в таком масштабе. Одна из основных причин GWT заключается в том, что вы можете перестать беспокоиться о подобных вещах. По крайней мере, пока это не произойдет.

0 голосов
/ 25 марта 2015

Я понимаю, что это старый вопрос, но у меня была та же проблема, и я хотел поделиться с ней новым решением.

Сегодня с GWT2.7 «устаревшие» браузеры пытаются загрузить undefined.cache.js. Это, очевидно, терпит неудачу, и клиент застревает навсегда.

Вы можете установить сам GWT для установки резервных шагов компиляции, но простое решение - просто предоставить (вручную) undefined.cache.js и поместить его там, где находятся другие сгенерированные файлы.

Внутри вы положили одну строку:

xxxxxxx.onScriptDownloaded(alert('This browser is not supported anymore.\nPlease upgrade to a more recent browser.'));

где xxxxxxx - базовое имя вашего модуля (от xxxxxxxx.gwt.xml).

0 голосов
/ 10 июня 2009

Если вы хотите сделать это простым и глупым, проверьте с помощью некоторого кода JavaScript в вашем основном html-файле перед загрузкой GWT. Тем не менее, я бы предпочел доверить GWT более-менее причудливое поведение. Вы также можете порекомендовать Chrome или Firefox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...