我正在尝试编写特定于浏览器的代码。是否有GWT API来找出客户端使用的浏览器?
答案 0 :(得分:25)
Cross-Browser Support上的GWT Developer's Guide页面提供了一个返回UserAgent字符串的JSNI函数。
但请注意,您可能希望使用Deferred Binding来编写特定于浏览器的代码,而不是检测UserAgent。
修改:Kasturi指出Window.Navigator.getUserAgent(),其实施方式如下:
/**
* Gets the navigator.appName.
*
* @return the window's navigator.appName.
*/
public static native String getAppName() /*-{
return $wnd.navigator.appName;
}-*/;
所以是的,这应该执行跨浏览器支持页面上提到的功能(除了它不会调用toLowerCase()),尽管再次使用延迟绑定可能会更好。