2009-06-06 9 views
4

Ich möchte eine Nachricht an Benutzer mit nicht unterstützten Browsern anzeigen, im Gegensatz zu der Website auf eine hässliche Weise fehlschlagen.GWT nicht unterstützte Browser-Warnung

Was ist der beste Weg, das zu tun?

+1

Lustig, dass GWTs Liste der unterstützten Browser Chrome nicht enthält. – Nosredna

+1

Guter Punkt. Trotzdem Safari ~ = Chrome für alle Rendering-Zwecke. –

Antwort

1

Die GWT-Team Browser keine Liste von nicht unterstützten Browser bieten, nur unterstützt, und es ist eine vage Liste an, dass „die neuesten Versionen von Internet Explorer, Firefox und Safari. (Oper, auch die meisten der ganzen Zeit.)".

Wenn Sie eine gute Idee, sich von dem, was Browser/Version wird nicht funktionieren Sie this code verwenden können:

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

zu erfahren, welche Browser verwendet wird und vielleicht ein Work-around kochen.

Auf der anderen Seite kann das Browser-Rendering von Webseiten auf viele subtile Arten scheitern, von leicht störend bis katastrophal, und es gibt oft keine Möglichkeit zu wissen, wo Ihre Seite auf diese Skala fällt. Einer der Hauptgründe für GWT ist, dass Sie aufhören können, sich über so etwas Sorgen zu machen. Zumindest bis es passiert.

+1

Ich denke, Cooking ein Workaround wäre für GWT ziemlich herausfordernd, in Anbetracht dessen, dass das JavaScript, das es bedient, auf dem Browser basiert, der es zu dienen scheint. Wenn es hilft, hier ist ppk's neueste Browser erkennen, die neu genug ist, um Chrome und iPhone zu identifizieren: http://www.quirksmode.org/js/detect.html – Nosredna

+1

Buße ihre offizielle Liste hier: http://code.google. com/webtoolkit/doc/neueste/FAQ_GettingStarted.html # Was_Browser_does_GWT_support? –

0

Wenn Sie es einfach und dumm machen wollen, überprüfen Sie mit etwas JavaScript-Code in Ihrer Haupt-HTML-Datei, bevor GWT geladen wird. Nichtsdestotrotz würde ich eher darauf vertrauen, dass GWT mehr oder weniger schrullig wird. Sie könnten auch nur Chrom oder Firefox empfehlen.

0

Ich weiß, das ist eine alte Frage, aber ich hatte das gleiche Problem und wollte eine neue Lösung dafür teilen.

Heute mit GWT2.7 "veraltete" Browser versuchen, undefined.cache.js herunterladen. Dies scheitert offensichtlich und der Client bleibt für immer stecken.

Sie könnten Patch GWT selbst Einstellung Fallback kompilieren Schritte, aber die einfache Lösung ist es, einfach eine (manuell gestaltete) undefined.cache.js und legen Sie es, wo die anderen generierten Dateien sind.

Im Inneren kann man diese eine Zeile setzen:

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

wo xxxxxxx Ihr Modul Basisnamen (ab xxxxxxxx.gwt.xml).

Verwandte Themen