要开发一个响应性的应用程序,我们需要知道用户是使用他的手指还是鼠标来适应应用程序的行为。例如,如果屏幕是可触摸的,按钮就会更大.
我们可以通过收听Window.onTouch事件和Window.onMouse事件来猜测屏幕是否可以触摸。
但是我想知道应用程序何时加载:在用户进行任何交互之前。
我怎么能这么做?
发布于 2015-01-28 09:21:42
您可以使用dart:js并使用答案https://stackoverflow.com/a/2915912/217408中所示的一种方法
将此添加到index.html中
<script type="application/javascript">
function hasTouchSupport() {
return 'ontouchstart' in document.documentElement;
}
</script>从达特那里打电话就像
import 'dart:html';
import 'dart:js' as js;
bool _hasTouchSupport;
bool get hasTouchSupport {
if(_hasTouchSupport == null) {
_hasTouchSupport = js.context.callMethod('hasTouchSupport');
}
return _hasTouchSupport;
}
void main() {
print(hasTouchSupport);
}Linux /Chrome中的false
我的安卓手机上的true
发布于 2015-01-28 09:30:46
根据使用JavaScript检测“触摸屏”设备的最佳方法是什么?的说法,拥有适合所有浏览器的东西并不容易。
如果使用现代派,可以使用:
import 'dart:js' as js;
bool get isTouchDevice => js.context['Modernizr']['touch'];https://stackoverflow.com/questions/28188035
复制相似问题