解决onclick事件的300ms延时问题

首先是资源的下载:fastclick.js

 

     作为一个新手,插件原理什么的研究不透,看的也是似懂非懂的,网上有很多大牛写的博文相当的好,对于写文章方面确实是望尘莫及啊,所以想详细了解原理的朋友直接去大牛的博客里欣赏吧【读fastclick源码有感】

     在这里我只是简单的记录下简单的用法,还请大牛们不吝赐教

     为什么存在延迟?

      从点击屏幕上的元素到触发元素的 click 事件,移动浏览器会有大约 300 毫秒的等待时间。为什么这么设计呢? 因为它想看看你是不是要进行双击(double tap)操作。

 

     引入插件步骤

  ①在HTML页面中添加

 

  1. <script type='application/javascript' src='/path/to/fastclick.js'></script>  

注:必须在页面所有Element之前加载脚本文件先实例化fastclick
  ②在JS中添加fastclick的身体,推荐以下做法:

 

 

  1. if ('addEventListener' in document) {  
  2.     document.addEventListener('DOMContentLoaded', function() {  
  3.         FastClick.attach(document.body);  
  4.     }, false);  
  5. }  

  如果你使用了JQuery,那么JS引入就可以改用下面的写法:

 

 

  1. $(function() {  
  2.     FastClick.attach(document.body);  
  3. });  


  如果你使用Browserify或者其他CommonJS-style 系统,当你调用`require('fastclick')`时,`FastClick.attach`事件会被返回,加载FastClick最简单的方式就是下面的方法了:

 

 

    1. var attachFastClick = require('fastclick');  
    2. attachFastClick(document.body);  
posted @ 2017-09-18 10:30  闪闪&红星  阅读(1590)  评论(0编辑  收藏  举报