【Javascript】触摸拖动事件

这是我做的一个自定事件,在其Event对象上会带有deltaX和deltaY两个属性以表示触摸拖动的偏移量。

用法是

选项object的属性见上面源码里 extendEventDefaultOpt 对象的两个属性。
然后当手指在元素上拖动的时候就会触发touchdrag事件。
继续阅读

【Javascript】判断是否为触摸操作模式

写了段代码可以用来识别用户的操作方式是否为触摸。

首先需要给元素加一个便于批量添加事件的on方法(我自认为这么写没什么毛病

然后定义判断触摸模式的代码

这段代码的作用

  • window 对象上定义touchMode变量,值为boolean,为true时是触摸模式,为false时是非触摸模式(大概就是鼠标模式)。如果你不希望出现此变量,删除相关赋值代码即可。
  • 模式变动时在 window 对象上触发 touchModeChange 事件,event对象的touchMode属性为变动后的值。

在支持触摸的设备上,touchMode默认为true,移动鼠标后会转变为false。我认为这个地方是有点毛病的,但是不知道如何正确判断初始状态。

对于阻止以上代码中事件冒泡到window的元素,需要额外执行相关的监听代码以保证正确性。

跨次元日常卖萌