vue移动端

touch的开始事件是@touchstart,

移动过程是@touchmove,

结束事件是@touchend

解决办法一:

elem.addEventListener(
'touchstart',
fn,
{ passive: false }
);

解决办法二:

* { touch-action: pan-y; }
使用全局样式样式去掉

Passive event listeners

2016年Google I/O上提出的概念,目的是用来提升页面滑动的流畅度。

For instance, in Chrome for Android 80% of the touch events that block scrolling never actually prevent it. 10% of these events add more than 100ms of delay to the start of scrolling, and a catastrophic delay of at least 500ms occurs in 1% of scrolls.

在 Android 版 Chrome 浏览器的 touch 事件监听器的页面中,80% 的页面都不会调用 preventDefault 函数来阻止事件的默认行为。在滑动流畅度上,有 10% 的页面增加至少 100ms 的延迟,1% 的页面甚至增加 500ms 以上的延迟。

由于浏览器无法预先知道一个事件处理函数中会不会调用 preventDefault(),它需要等到事件处理函数执行完后,才能去执行默认行为,然而事件处理函数执行是要耗时的,这样一来就会导致页面卡顿,也就是说,当浏览器等待执行事件的默认行为时,大部分情况是白等了。

如果 Web 开发者能够提前告诉浏览器:“我不调用 preventDefault 函数来阻止事件事件行为”,那么浏览器就能快速生成事件,从而提升页面性能,Passive event listeners 的提出就解决了这样的问题。

最新文章

  1. Bootstrap组件
  2. c# 委托与异步调用
  3. mysql导入导出.sql文件 备份还原数据库
  4. Linux之C编译器gcc和makefile使用简介
  5. apache asp.net
  6. delphi-json组件,速度非常快,要比superobject快好几倍
  7. MongoDB 操作
  8. 在mac本上折腾android 开发环境
  9. 从控制台读取password - C#
  10. DMI ( Dynamic Method Invocation )
  11. Java Web -【分页功能】详解
  12. wget命令使用报错 certificate common name 'xxx' doesn't match requestde host name
  13. js生成tree形组织机构下拉框
  14. 洛谷P3258 松鼠的新家
  15. linux 硬链接 软链接
  16. 莫比乌斯函数 51nod-1240(合数分解试除法)
  17. 《Linux内核分析》读书笔记(四章)
  18. Linux rsync 命令学习
  19. jetty域证书更新
  20. 绚丽而实用的jQuery/CSS3应用及源码

热门文章

  1. centos7下kubernetes(10。kubernetes-daemonset)
  2. 1-tomcat简介
  3. Ubuntu 14.04 LTS 安装 NVIDIA 显卡驱动后的屏幕亮度调节问题
  4. String,StringBuffer,StringBuilder的区别与共同点
  5. redis list 清空记录小技巧
  6. 初学Python——进程
  7. JavaScript的基本包装类型说明
  8. 常用的一些markdown格式
  9. Java使用Future设置方法超时
  10. Materialized View模式