jQuery-Extensions-touchJS

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

Versión del día 4/12/2022. Echa un vistazo a la versión más reciente.

Este script no debería instalarse directamente. Es una biblioteca que utilizan otros scripts mediante la meta-directiva de inclusión // @require https://update.greasyfork.org/scripts/454450/1124835/jQuery-Extensions-touchJS.js

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

Autor
tutu辣么可爱
Versión
1.6
Creado
8/11/2022
Actualizado
4/12/2022
Tamaño
6,44 KB
Licencia
Desconocida

jQuery-Extensions-touchJS

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

参数说明

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

使用方式

  • 添加单个事件(以长按为例)
//指定事件名(可省略,但省略后无法指定删除此事件)
$(selector).touch("longPress",()=>{//具体业务},"myLongPress")
//或者指定方法
myLongPress=function(){//具体业务}
$(selector).touch("longPress",myLongPress)
  • 批量添加事件(以长按、长按取消、点击为例)
$(selector).touch({
  //可通过myLongPress方法名指定删除此事件
  longPress:myLongPress,
  //无法指定删除
  longPressCancel(){//具体业务},
  tap(){//具体业务}
})
  • 删除指定类型的所有事件(以长按为例)
//删除longPress所有事件,格杀勿论
$(selector).unbindTouch("longPress")
  • 删除指定方法对应的事件(以长按为例)
//通过指定事件名确认唯一事件(添加事件时指定)
$(selector).unbindTouch("longPress","myLongPress")
//或者通过指定方法确认唯一事件
$(selector).unbindTouch("longPress",myLongPress)
  • 其他杂项方法或属性
//禁用所有touch事件(仅限于通过本插件产生的事件方法)
$(selector).attr("touchJS-disabled","")
//查看所有touch事件(仅限于通过本插件产生的事件方法)
$(selector)[0].libForTouchJsExt