1

TouchEvent.supported尝试创建一个TouchEvent确定触摸支持。这适用于实际的触摸设备,但是在使用 Chromium DevTools 时没有帮助:“模拟触摸屏”。Chromium 确实公开了函数Touch()TouchList()窗口对象。我添加了一个检查context['Touch'],现在显示supportsTouchEvent: true。它仍然不能指示“模拟触摸屏”是否处于活动状态。任何建议表示赞赏!

//bool get supportsTouchEvents =>TouchEvent.supported;
bool get supportsTouchEvents {
  bool bIsTouchSupported = TouchEvent.supported;
  if (bIsTouchSupported == false) {
     //Get the browser's native window and check for Touch function
     JsObject nativeTouch = context['Touch'];
     bIsTouchSupported = (nativeTouch is JsObject);
     //Check Chromium DevTools "Emulate Touch Screen"
  }
  return bIsTouchSupported;
}

更新 1:对 context['Touch'] 函数的额外检查确实提供了更多关于触摸处理是可能的洞察力。但这是一个误报,因为“仿真”在打开 DevTools 窗口之前是不活动的。作为一个臃肿的替代方案:如果 nativeTouch 安装鼠标和触摸流控制器/处理程序。

4

1 回答 1

1

这是一个已知的错误..........................

https://code.google.com/p/dart/issues/detail?id=16669

于 2014-04-03T04:17:26.800 回答