Safari与Chrome触摸板轮事件

时间:2018-10-08 11:12:17

标签: javascript google-chrome safari cross-browser

我有用于“ wheel”事件的事件侦听器,该事件侦听器用于放大/缩小地图。在以下情况下,使用触摸板可以在Chrome中正常运行:

  • 滚动(上下滑动两根手指滚动)
  • 放大或缩小(用两根手指捏放大或缩小)
  • 用三根手指捏

但是在Safari中,在第二种情况下它不会调度“ wheel”事件:

  • 放大或缩小(用两根手指捏放大或缩小)

相反,浏览器应用Command + / Command-功能来放大/缩小整个网站。

问题

  • 与浏览器或操作系统相关的功能吗?根据{{​​3}},它是与操作系统相关的功能,但这是否意味着如果不支持“放大或缩小”手势,Chrome会无法正常工作?
  • 我应该在Safari中阻止此行为还是此功能 对于我不应该禁用的用户?
  • 最后,是否可以使用JavaScript禁用此功能(仅禁用触摸板功能,而根本不禁用),以便在所有浏览器中都具有一致的行为-放大/缩小地图而不是整个网站?

1 个答案:

答案 0 :(得分:0)

由于尚无答案,我与我的项目所接受的结论共享:

  

在Safari中,“用两根手指捏”用于放大/缩小   与Chrome / Firefox不同的网站,该手势会派遣“滚轮”   (滚动)事件。

     

还有其他一些为“滚轮”设计的触摸板手势   (滚动)事件,您可以用来放大/缩小地图:

     
      
  • 上下滑动两根手指滚动
  •   
  • 用三根手指捏
  •   
     

其他网站上的行为是相同的。例:   http://geojson.io/