做app开发时,用到了webview,需要监听webview的长按事件,使用原生的js处理监听如下:

var timeOutEvent = ; //定时器
//开始按
function gtouchstart() {
timeOutEvent = setTimeout("longPress()", ); //这里设置定时器,定义长按500毫秒触发长按事件,时间可以自己改,个人感觉500毫秒非常合适
return false;
};
//手释放,如果在500毫秒内就释放,则取消长按事件,此时可以执行onclick应该执行的事件
function gtouchend() {
clearTimeout(timeOutEvent); //清除定时器
if (timeOutEvent != ) {
//这里写要执行的内容(尤如onclick事件)
//alert("你这是点击,不是长按");
}
return false;
};
//如果手指有移动,则取消所有事件,此时说明用户只是要移动而不是长按
function gtouchmove() {
clearTimeout(timeOutEvent); //清除定时器
timeOutEvent = ;
}; //真正长按后应该执行的内容
function longPress() {
timeOutEvent = ;
//执行长按要执行的内容,如弹出菜单
//alert("长按事件触发");
do_Page.fire("showTool",{"index":index,"url":images[index].source});
}

这里设置500ms点击为长按处理,主要用到了3个事件:

ontouchstart、ontouchmove、ontouchend,主要思路:

在ontouchstart事件中启动一个定时器,定时器间隔时间为500ms,即500ms后自动执行longPress逻辑,并清除定时器事件,ontouchend表示tap弹起,这时直接清除定时器,ontouchmove表示手指滑动,直接清除定时器即可,这样就简单实现了长按事件监听处理。

webview长按事件js监听的更多相关文章

  1. js监听input等表单输入框的变化事件oninput

    js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变 ...

  2. js 监听整个页面的回车事件

    JS监听整个页面的回车事件 <script type="text/javascript"> document.onkeydown=keyDownSearch;      ...

  3. 原 JS监听回车事件

    原 JS监听回车事件 发表于2年前(2014-06-04 10:16)   阅读(6101) | 评论(0) 11人收藏此文章, 我要收藏 赞0 1月16日厦门 OSC 源创会火热报名中,奖品多多哦  ...

  4. js监听用户的键盘敲击事件,兼容各大主流浏览器

    js监听用户的键盘敲击事件,兼容各大主流浏览器 <script type="text/javascript"> document.onkeydown = functio ...

  5. JS监听div的resize事件

    原文地址:http://zhangyiheng.com/blog/articles/div_resize.html 需求 开发过程中经常遇到的一个问题就是如何监听一个div的size变化. 比如我用c ...

  6. 原生js监听input值改变事件

    哈哈哈,又来了,今天闲来无事,实验了下原生js监听input value值改变事件,下面就来说道说道: 本来写监听input值便获是用jquery的,之前的随笔写了,就是这个方法,地址:http:// ...

  7. js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符

    js中对arry数组的各种操作小结   最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...

  8. js事件绑定/监听

    事件绑定/监听的方法 1.直接绑定 顾名思义,直接在DOM元素上绑定onclick.onmouseover.onmouseout.onmousedown.onmouseup.ondblclick.on ...

  9. Android开发之PullToRefresh的Click点击事件的监听实现长按删除Item

    本文为原创博客.出自http://blog.csdn.net/minimicall 到今天为止,搜芽的卖家版本号应该来说已经基本完毕.攻坚克难的一路过来.速度也控制的比較好. 项目过程进度 从任务分配 ...

随机推荐

  1. linux c libcurl的简单使用(转)

    curl是Linux下一个非常著名的下载库,通过这个库,可以很简单的实现文件的下载等操作.看一个简单的例子: #include <curl/curl.h> #include <std ...

  2. C# 命令绑定

    在构建WinForm程序中,为了使系统的结构清晰,有好的用户交互体验,实现不同按钮之间的交互,不使主窗体里面的代码臃肿.将按钮的命令通过类进行绑定,实现命令的管理使很有必要的. 该文章是将如何实现Bu ...

  3. eclipse使用技巧、快捷键

    1.alt+/  自动提示符,可以快速补整,提高效率.  输入Sysout,再按下alt+/,就可以打印了.  输入main,再按下alt+/,可以直接显示main方法. 2.ctrl+左键,快速进入 ...

  4. javascript 网页运行代码效果

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  5. SAP 如何查看用户登录信息

    1.首先进入事务代码 SM19  配置审计参数文件 2.选择客户端,用户名,并且勾选过滤激活之后点击细节配置,进入如下界面: 配置完成之后,点击保存. 3.并且可以进入SM20界面,选择要查看的客户端 ...

  6. OpenFileDialog - 设置 - Filter 笔记

    using (OpenFileDialog fileSelectDialog = new OpenFileDialog()) { fileSelectDialog.Multiselect = fals ...

  7. [vb.net]简单多线程实例

    .Imports System .Imports System.Threading . . .Module Module1 . . Sub Main() . . Dim mythread1 As Th ...

  8. hdoj 2680 choose the best route

    Problem Description One day , Kiki wants to visit one of her friends. As she is liable to carsicknes ...

  9. css多行文本省略号

    适用于内核为webkit的浏览器: display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflo ...

  10. Hadoop-1.2.1 安装步骤小结(ubuntu)

    1.安装ubuntu系统 如果不使用云服务器,可以使用虚拟机WmWare安装,具体安装步骤这里就不讲了,ubuntu系统下载地址:http://www.ubuntu.com/download/desk ...