模拟移动端的长按事件

来源:互联网 发布:惠东人民政府网络问政 编辑:程序博客网 时间:2024/05/01 07:21

问题描述:js模拟移动端的长按事件

<!DOCTYPE html>  <html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  <title>长按</title>  <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1" />  <meta name="apple-touch-fullscreen" content="yes">  <meta name="apple-mobile-web-app-capable" content="yes" />  <link href="css/travelstyle.css" rel="stylesheet" type="text/css" />    </head>  <body id="body_id" >  <div style="width:100%;">  <div style="width:100%; height:100px; background-color:#CCC;" ontouchstart="gtouchstart()" ontouchmove="gtouchmove()" ontouchend="gtouchend()">长按我</div>   </div>  <script>  var timeOutEvent=0;//定时器   //开始按   function gtouchstart(){       timeOutEvent = setTimeout("longPress()",500);//这里设置定时器,定义长按500毫秒触发长按事件,时间可以自己改,个人感觉500毫秒非常合适       return false;   };   //手释放,如果在500毫秒内就释放,则取消长按事件,此时可以执行onclick应该执行的事件   function gtouchend(){       clearTimeout(timeOutEvent);//清除定时器       if(timeOutEvent!=0){           //这里写要执行的内容(尤如onclick事件)           alert("你这是点击,不是长按");       }       return false;   };   //如果手指有移动,则取消所有事件,此时说明用户只是要移动而不是长按   function gtouchmove(){       clearTimeout(timeOutEvent);//清除定时器       timeOutEvent = 0;         };      //真正长按后应该执行的内容   function longPress(){       timeOutEvent = 0;       //执行长按要执行的内容,如弹出菜单       alert("长按事件触发发");   }     </script>  </body>  </html>  
快乐学习,快乐编程!

阅读全文
1 0
原创粉丝点击