2009-06-06 44 views
4

サポートされていないブラウザを使用しているユーザーには、サイトが醜い方法で失敗するのではなく、メッセージを表示します。GWTサポートされていないブラウザの警告

これを行うにはどうすればよいですか?

+1

GWTのサポートされているブラウザのリストにはChromeが含まれていません。 – Nosredna

+1

良い点。それにもかかわらずSafari〜=すべてのレンダリングの目的でChrome –

答えて

1

GWTチームは、唯一のブラウザをサポートサポートされていないブラウザのリストを提供していない、そしてそれは、Internet Explorer、Firefox、およびSafariのの「最新バージョンで漠然とリストです。(オペラ、あまりにも、ほとんどの時間の)。 "あなた自身どのようなブラウザの良いアイデアを持っている場合

/バージョンは、あなたがthis codeを使用することができます動作しません。

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

を使用して、おそらく回避策調理されているブラウザ学びます。

一方、ウェブページのブラウザレンダリングは、軽度から致命的なものまでさまざまな方法で失敗する可能性があり、ページがどこにあるかを知る方法がないことがよくあります。 GWTの主な理由の1つは、このようなことについて心配することを止めることができることです。少なくともそれが起こるまで。

+1

私は回避策を調理することはGWTにとってかなり難しいと思っています.GWTが提供するJavaScriptは、それが役に立つと思うブラウザに基づいていると考えています。それが役に立ちそうなら、ppkの最新のブラウザ検出機能があります。これはChromeとiPhoneを識別するのに十分な新機能です:http://www.quirksmode.org/js/detect.html – Nosredna

+1

公式リストはhttp://code.google。 com/webtoolkit/doc/latest/FAQ_GettingStarted.html#What_browsers_does_GWT_support? –

2

GWTでは、.gwt.xmlファイルを使用してブラウザを検出することもできます。これを見ている:

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

それは興味深いソリューションだが、私はそれがあなたのケースで最適なソリューションだかはわかりません。これは、サポートされていないブラウザに自動的に読み込まれるアプリケーションの簡略版を作成するのに非常に便利です。

0

GWTがロードされる前に、簡単で愚かにしたい場合は、メインのhtmlファイルのjavascriptコードを確認してください。それにもかかわらず、私はGWTを多かれ少なかれ奇妙なものに対処することをむしろ信頼したいと思います。また、クロームやファイアフォックスをお勧めすることもできます。

0

これは古い質問ですが、同じ問題があり、新しい解決策を共有したいと考えていました。

今日、GWT2.7で「古い」ブラウザundefined.cache.jsをダウンロードしようとしています。これは明らかに失敗し、クライアントは永遠に詰まっています。

フォールバックコンパイルステップを設定するGWT自体にパッチを当てることができますが、簡単な解決策は、手動で作成したundefined.cache.jsを用意して、他の生成ファイルの場所に配置することです。

あなたはこの1行を入れて内側:

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

xxxxxxxが、モジュールのベース名は、(xxxxxxxx.gwt.xmlから)です。

関連する問題