TouchEvent在Firefox和其他网站浏览器中不起作用

Le *_*oan 4 javascript firefox html5

我有一个问题,在Chrome中运行良好,但在Firefox中无法启动

function normalizeEvent(e){     
  if(e.originalEvent instanceof TouchList){
    do somethings    
   }
}
Run Code Online (Sandbox Code Playgroud)

这是消息错误:ReferenceError:未定义TouchEvent

if(e.originalEvent instanceof TouchEvent){}
Run Code Online (Sandbox Code Playgroud)

dri*_*_by 6

这个老问题,但是也许有人会在这里搜索解决方案(就像我一样)。

要在FF中进行这项工作,只需添加window.TouchEvent条件(是否已定义):

if(window.TouchEvent && e.originalEvent instanceof TouchEvent){}

  • 也许值得一提的是,移动设备上的 Firefox *确实* 有“TouchEvent”,因此如果未定义,可以安全地假设您没有处理支持触摸的设备。如果您在支持触摸的桌面上使用 Firefox,不确定它是否已定义。 (3认同)