vue手机端开发聚焦不灵敏

vue手机端开发聚焦不灵敏

前置:

手机端开发时有时使用UI框架中的输入框或者文本域在点击的时候聚焦不是很快速。因为一是有的控件带有动画过度效果,二是移动设备的屏幕点击事件大多会延迟300ms左右才会触发(所有版本的Android Chrome浏览器,如果设置viewport meta的值有user-scalable=no,浏览器也是会马上触发点击事件没有延迟),这是因为为了检查用户是否在做双击。

解决:

当然更优更好的解决方案有很多,此处记录的只是我自己解决此问题的一种方法。使用 fastclick

需要详细了解的可以看下这位大神的透彻讲解:https://www.cnblogs.com/ylweb/p/10549040.html

1.可以直接引用也可以npm引入,因为是vue项目开发的直接使用npm方式了

npm install fastclick --save

也可以使用标签引入(未测试):

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

2.在main.js中引入并使用

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


FastClick.prototype.focus = function (targetElement) {
  var length;
  if (targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month') {
    length = targetElement.value.length;
    targetElement.focus();
    targetElement.setSelectionRange(length, length);
  } else {
    targetElement.focus();
  }
};

至此,我的问题解决,希望对你有帮助!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值