js-Extensions-touchJS

js-Extensions-touchJS是一个非常简单的原生js touch扩展,用于适配移动端的常用touch操作(点击tab、双击dbTab、长按longPress、长按终止longPressCancel、滑动swipe以及具体滑动方向left right up down)

Verzia zo dňa 30.11.2022. Pozri najnovšiu verziu.

Tento skript by nemal byť nainštalovaný priamo. Je to knižnica pre ďalšie skripty, ktorú by mali používať cez meta príkaz // @require https://update.greasyfork.org/scripts/455704/1123122/js-Extensions-touchJS.js

Autor
tutu辣么可爱
Verzia
1.4
Vytvorené
30.11.2022
Aktualizované
30.11.2022
Veľkosť
5,5 KB
Licencia
neuvedené

js-Extensions-touchJS

  • 一个非常简单的原生js touch扩展,用于适配移动端的常用touch操作
  • 支持的touch事件:点击tab、双击dbTab、长按longPress、长按终止longPressCancel、滑动swipe,以及具体滑动方向(左left、右right、上up、下down)
  • jQuery请使用jQuery插件版本:jQuery-Extensions-touchJS

参数说明

  • touchJS.bind(target,evt,fn,fnName)
参数 说明
target 参数类型:dom对象
不可缺省
监听事件的dom对象
evt 参数类型:字符串
不可缺省
指定监听的事件类型(具体请见下方事件列表)
fn 参数类型:方法
不可缺省
所监听事件类型发生时,事件处理方法,不接收任何参数
fnName 字符串
可缺省,默认值为fn的方法名(若fn不为匿名方法)
本次事件的事件名。同一事件类型下事件名具有唯一性
  • touchJS.unbind(target,evt,fnName)
参数 说明
target 参数类型:dom对象
不可缺省
监听事件的dom对象
evt 参数类型:字符串
不可缺省
指定需要删除的事件类型(具体请见下方事件列表)
fnName 字符串
可缺省。默认值为null
指定需要删除的事件,若为null,则删除evt指定事件类型所有事件
  • 事件列表
类型 说明
tab 屏幕点击事件
dbTab 屏幕双击事件
longPress 屏幕长按事件
longPressCancel 屏幕长按取消事件
swipe 屏幕滑动事件
left 屏幕左滑事件
(同时触发swipe事件)
right 屏幕右滑事件
(同时触发swipe事件)
up 屏幕上滑事件
(同时触发swipe事件)
down 屏幕下滑事件
(同时触发swipe事件)

使用方式

  • 添加单个事件(以长按为例)
//指定事件名(可省略,但省略后无法指定删除此事件)
touchJS.bind(target,"longPress",()=>{//具体业务},"myLongPress")
//或者指定方法
myLongPress=function(){//具体业务}
touchJS.bind(target,"longPress",myLongPress)
  • 批量添加事件(以长按、长按取消、点击为例)
touchJS.bind(target,{
  //可通过myLongPress方法名指定删除此事件
  longPress:myLongPress,
  //无法指定删除
  longPressCancel(){//具体业务},
  tap(){//具体业务}
})
  • 删除指定类型的所有事件(以长按为例)
//删除longPress所有事件,格杀勿论
touchJS.unbind(target,"longPress")
  • 删除指定方法对应的事件(以长按为例)
//通过指定事件名确认唯一事件(添加事件时指定)
touchJS.unbind(target,"longPress","myLongPress")
//或者通过指定方法确认唯一事件
touchJS.unbind(target,"longPress",myLongPress)
  • 查看所有touch事件(仅限于通过本插件产生的事件方法)
dom对象.jsTouchFnMap