码迷,mamicode.com
首页 > 移动开发 > 详细

移动端优化

时间:2017-09-23 18:47:26      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:btn   bottom   stc   apt   ext   splay   html   解决   selector   

地址:http://www.imooc.com/video/9578

一、300ms

  移动web页面上的click事件响应都要慢上300ms

技术分享

解决办法:

   第一种,使用Tap事件代替click事件

技术分享

 

例子:

 1 <!doctype html>
 2 <html lang="en">
 3 <head>
 4 <meta charset="UTF-8">
 5 <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">
 6 <title>Test Tap</title>
 7 <style>
 8     .btn{
 9         width: 150px;
10         height: 60px;
11         line-height: 60px;
12 
13         background-color: #EA424F;
14         color: #fff;
15         font-size: 20px;
16         text-align: center;
17         display: inline-block;
18         margin-bottom: 10px;
19     }
20     .bg-green{
21         background-color: #78C576;
22     }
23 
24     .show_time_click{
25         display: inline-block;
26         font-size: 25px;
27         margin-left: 10px;
28     }
29 
30 </style>
31 </head>
32 <body>
33 <p>注意:该Demo在移动设备上才能看出差别</p>
34 <div class="line">
35     <div class="btn" id="clickBtn">click me</div>
36     <div class="show_time_click" id="clickTime">0</div>
37 </div>
38 
39 <div class="line">
40     <div class="btn bg-green" id="tapBtn">tap me</div>
41     <div class="show_time_click" id="tapTime">0</div>
42 </div>
43 
44 <script src="../js/zepto.js"></script>
45 <script type="text/javascript">
46     
47     var clickBtn = document.querySelector(#clickBtn),
48         tapBtn = document.querySelector(#tapBtn),
49         clickTime = document.querySelector(#clickTime),
50         tapTime = document.querySelector(#tapTime);
51 
52     var start = 0,end = 0;
53     clickBtn.addEventListener(touchstart,function(){
54         start = new Date();
55     });
56     tapBtn.addEventListener(touchstart,function(){
57         start = new Date();
58     });
59 
60     clickBtn.addEventListener(click,function(){
61         end = new Date();
62         clickTime.innerHTML = (end-start)+ms;
63     });
64     $(#tapBtn).on(tap,function(){
65         end = new Date();
66         tapTime.innerHTML = (end-start)+ms;
67     })
68 </script>
69 
70 </body>
71 </html>

Tap事件的问题,“点透”BUG

技术分享

技术分享

1 fastclick.attach(document.body)

 

移动端优化

标签:btn   bottom   stc   apt   ext   splay   html   解决   selector   

原文地址:http://www.cnblogs.com/zhaobao1830/p/7581743.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!