【更新问题】vue-router中 v-link 默认绑定了 click 事件,如何消除移动端300ms 延迟问题?

更新
没有使用 fastclick 的时候,所有的 a 标签点击都会300延迟,使用 fastclick 之后 v-link 的标签没有延迟了,但是普通的 a 标签 click 事件仍然存在,我也不知道这是虾米情况。。。http://jiangjiu.leanapp.cn/ 可以微信访问这个连接,文章里的 a 标签很明显。

微信内置浏览器和 uc 浏览器都出现这个问题,反而 safari 没事儿。

按说 fastclick 会给body 设置 touchcancel 这些,为什么会有的有延迟有的没有延迟?

—————-原来的问题——–
在一个单页应用中使用了 vue-router,跳转的指令 v-link默认绑定的是 click事件,这在移动浏览器中会出现300ms 延迟问题,请问大大们应该如何解决呢

之前试着写了写根据 navigator.userAgent是否是 pc 端还是移动端来切换 click 事件/touchstart-touchend事件,结果发现v-link 只绑定 click事件,无法根据实际设备切换

目前看到的 fastclick 比较靠谱,除了这个还有别的方法么?

谢谢!

回答:

a, button
{

-ms-touch-action: manipulation;    /* IE10  */
touch-action: manipulation;        /* IE11+ */

}

http://caniuse.com/

回答:

暂时使用了 fastclick,并没有找到其他方法~

回答:

直接<meta name="viewport" content="width=device-width, user-scalable=no">, 禁用缩放即可, 现在的移动端页面, 缩放已经没多大的意义

回答:

Vue-touch

回答:

延时的问题是写在vue的源代码里面去找一下就好了,其实是IOS路由的跳转延时了300ms。

回答:

我这在ios和pc端都可以正常使用,到了android微信上点击就没有任何效果

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注