您的位置:首页 > Web前端

perfect-scrollbar 和 fastclick 整合后首次需要点击两次的处理

2015-12-09 14:28 387 查看

1 概要

1.1 perfect-scrollbar:用来做滚动,笔iscroll轻量

1.2 fastclick: 用来消除touch事件和click事件的延时

2 如果scroll的区域中有 按钮,会导致问题.

类似https://github.com/noraesae/perfect-scrollbar/issues/395的描述

3 两个问题

3.1 touchend后,会频繁的调用updatecss方法,且每10ms更新一次

3.2 在第一次点击元素时,perfect-scrollbar组件会把事件拦截,导致按钮无法正常点击

4 临时解决方案

4.1 定义额外变量

var t_differenceY = 0;

在touchMove方法触发时,将滑动的距离进行赋值

t_differenceY = differenceY;

在touchEnd的easingLoop判断中添加

if(t_differenceY < 0.1){

clearInterval(easingLoop);

return;

}

4.2 定义额外变量

window.t_scroll_hack

在touchStart方法中添加如下代码

//hacked by tian

var target=(e.target);

if(target.hasClass(‘hidden-input’) && !window.tian_scroll_hack){target.trigger(‘click’);

window.tian_scroll_hack = 1;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript