使用GWT识别支持触摸/手势的设备
我想知道是否有可能在GWT中识别设备是否能够触摸/手势事件 像iPhone这样的设备在很大程度上支持多点触摸事件。类似地,桌面上的Google Chrome也支持使用GWT识别支持触摸/手势的设备,gwt,mobile,touch,device,jsni,Gwt,Mobile,Touch,Device,Jsni,我想知道是否有可能在GWT中识别设备是否能够触摸/手势事件 像iPhone这样的设备在很大程度上支持多点触摸事件。类似地,桌面上的Google Chrome也支持TouchEvents。目前,windows8已经设计了一个IE,它可以响应触摸事件 我正在开发一个应用程序,我想将某些功能限制为仅支持触摸/手势的设备!任何解决方案,请帮助?我认为除了UA嗅探之外没有其他方法。GWT目前不提供此类实用程序 此外,在gwt为我们提供一个直接的javascript api之前,在现有的javascript
TouchEvents
。目前,windows8已经设计了一个IE,它可以响应触摸事件
我正在开发一个应用程序,我想将某些功能限制为仅支持触摸/手势的设备!任何解决方案,请帮助?我认为除了UA嗅探之外没有其他方法。GWT目前不提供此类实用程序 此外,在gwt为我们提供一个直接的javascript api之前,在现有的javascript技术上编写jsni是有意义的
对于windows 8,要引用的msdn文档是我使用用户代理签入延迟绑定来完成此操作。我创建了一个白名单,以便以后可以添加更多设备 这是代码,
<!-- Definitions for mobile -->
<define-property name="mobile.user.agent" values="android, ios, not_mobile" />
<property-provider name="mobile.user.agent"><![CDATA[
{
var ua = window.navigator.userAgent.toLowerCase();
if (ua.indexOf("android") != -1) { return "android"; }
if (ua.indexOf("iphone") != -1) { return "ios"; }
if (ua.indexOf("ipad") != -1) { return "ios"; }
return 'not_mobile';
}
]]></property-provider>
<!-- Constrain the value for non-webkit browsers -->
<set-property name="mobile.user.agent" value="not_mobile" >
<none> <!-- Actually means NOR, in this case "not safari" -->
<when-property-is name="user.agent" value="safari" />
</none>
</set-property>
是的,我看到了这个。但这在Windows8上有问题。在Windows8中,它只是简单地接受一切,就像触摸一样……这是微软的经典做法:(。我们一直在定制代码,专门用于IE10。)?
<replace-with class="com.example.HTML5Player">
<when-type-is class="com.example.FlashPlayer" />
<any>
<when-property-is name="mobile.user.agent" value="android" />
<when-property-is name="mobile.user.agent" value="ios" />
</any>
</replace-with>