文档章节

fastClick

安吉拉
 安吉拉
发布于 2017/09/08 15:30
字数 546
阅读 18
收藏 0

最近跟着视频看了一个vuejs+webpack+nodejs的项目(一个音乐播放器),其中用到了fastClick插件,但是并不是很了解,查了一些资料后整理了一下。

fastClick使用于在移动浏览器上发生介于轻敲及点击之间的指令时,能够让你摆脱300毫秒的延迟。FastClick可以让你的应用程序更加灵敏迅捷。支持各种移动浏览器,比如safari,chrome,opera等

...移动浏览器将等待大约300ms从您点击按钮来点击点击事件。这样做的原因是浏览器正在等待您是否正在执行双击。

什么时候不使用他

fastclick不附加任何监听器在桌面浏览器上面,所以如果你的项目不是针对的移动浏览器,那么就不要使用这个插件。

Android 设备上的 google浏览器 (Chrome) 32+ 版本,在meta头信息中设置 width=device-width 没有300毫秒的延时,所以也无需使用本插件。

<meta name="viewport" content="width=device-width, initial-scale=1">


  • Chrome浏览器在安卓设备上的时候,设置meta头信息中 user-scalable=no 但是这样就无法让用户多点触控缩放网页了。

对于IE11 + 你可以设置 touch-action: manipulation; 来禁用通过双击放大某些元素例如:链接和按钮的,对于IE10使用 -ms-touch-action: manipulation 。

使用方法

1、引入插件的JavaScript文件到你的HTML网页中,像这样:

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

注意:type属性在HTML5网页中可以省略不写。

脚本必须加载到实例化fastclick在页面的任何元素之前。

实例化 fastclick 最好在body元素的前面,这是使用推荐的方法:

if ('addEventListener' in document) {
    document.addEventListener('DOMContentLoaded', function() {
        FastClick.attach(document.body);
    }, false);
}
  •  

或者你使用了jQuery插件,你可以这样编写:

$(function() {
    FastClick.attach(document.body);
});
  •  

如果你使用的browserify CommonJS的模块系统或另一种风格,其fastclick.attach函数将返回 require(‘fastclick’) 。作为一个结果,使用fastclick这些装载机的最简单的方法如下:

var attachFastClick = require('fastclick');
attachFastClick(document.body);

 在vuejs中使用的时候,在mainjs中调用

import fastclick from 'fastclick'
fastclick.attach(document.body)

 

© 著作权归作者所有

共有 人打赏支持
安吉拉
粉丝 1
博文 35
码字总数 7547
作品 0
FastClick使用之trigger触发click失效

最近为了提升web app在ios上的点击效率,使用了FastClick.js,效果很明显,基本是点击后立马有反馈。可是发现一个问题,在使用模拟点击的时候,并不能触发点击的目的。 1 而以上代码,在安卓...

wecloudnet
2016/07/13
220
0
vue2.0移动端音乐app(1)

从0开始用vue2.0模仿做一个移动端音乐app 源码地址https://github.com/Aaron0525/Vue-music 一、环境搭建 cd vue-music npm install package.json "stylus": "^0.54.5", "stylus-loader": "^......

再这么说就哭了呦!
2017/12/05
0
0
fastclick.js --- 解决移动端点击事件300ms延时

Fast Click 是一个简单、易用的库,专为消除移动端浏览器从物理触摸到触发点击事件之间的300ms延时。 为什么会存在延迟呢? 从你触摸按钮到触发点击事件,移动端浏览器会等待接近300ms,原因...

frwupeng517
06/26
0
0
fastClick的300ms延迟解决方案

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_17775997/article/details/82315049 开发移动端项目,点击事件会有300ms延迟的问题。至于为什么会有这个...

大灰狼的小绵羊哥哥
09/02
0
0
【读fastclick源码有感】彻底解决tap“点透”,提升移动端点击响应速度

申明!!!最后发现判断有误,各位读读就好,正在研究中.....尼玛水太深了 前言 近期使用tap事件为老夫带来了这样那样的问题,其中一个问题是解决了点透还需要将原来一个个click变为tap,这样...

Daniel_s
2016/01/27
190
0

没有更多内容

加载失败,请刷新页面

加载更多

多线程

1. 多线程概念。并发和并行的概念。 多线程指的是一段时间内cpu同时执行多个线程。一个程序至少运行>=1个进程,进程就是运行中的程序,而一个进程至少运行>=1个线程,线程是操作系统能调度的...

鱼想吃肉
8分钟前
0
0
HBase 表修复在线方式和离线方式

一、在线修复 1.1 使用检查命令 $ ./bin/hbase hbck 该命令可完整修复 HBase 元数据信息;存在有错误信息会进行输出; 也可以通过如下命令查看详细信息: $ ./bin/hbase hbck -details 1.2 ...

Ryan-瑞恩
33分钟前
1
0
redis 系列二 -- 常用命令

1.基础命令 info ping quit save dbsize select flushdb flushall 2.键命令 2.1 set 直接赋值 set a a 2.2 get 取值 get a 2.3 exists 是否存在 exists a 2.4 expire 设置剩余时间 秒 expire......

imbiao
今天
1
0
php foreach

<?php// 数组的引用$a=array(1,2,3,4,5);foreach($a as $key=>&$value){$value=$value*2;}print_r($a);echo " $key -------------------$value\r\n";/** * ...

小张525
今天
1
0
12-利用思维导图梳理JavaSE-多线程

12-利用思维导图梳理JavaSE-多线程 主要内容 1.线程概念 2.线程开发 3.线程的状态 4.线程的同步和死锁 5.Java5.0并发库类 QQ/知识星球/个人WeChat/公众号二维码 本文为原创文章,如果对你有一...

飞鱼说编程
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部