|
@ -28,7 +28,7 @@ define(['jquery', 'Hammer'], function ($, Hammer) {
|
28
|
28
|
var that = this;
|
29
|
29
|
this.elWrapper = $(">ul", this.el);
|
30
|
30
|
var hammer = this.hammer = new Hammer.Manager(this.el, {inputClass: Hammer.TouchMouseInput}); // 组件默认使用的PointInput有flex元素时,会奇怪的自动触发cancel事件
|
31
|
|
hammer.add(new Hammer.Pan({direction: Hammer.DIRECTION_HORIZONTAL, threshold: 5})); // 水平方向最小距离5Ft识别为平移手势
|
|
31
|
hammer.add(new Hammer.Pan({direction: Hammer.DIRECTION_HORIZONTAL, threshold: 20})); // 水平方向最小距离5Ft识别为平移手势
|
32
|
32
|
hammer.on("panstart panmove panend pancancel", Hammer.bindFn(that._onPan, this));
|
33
|
33
|
// console.log(hammer);
|
34
|
34
|
this.rightWidth = $(this.opt.rightSlt, this.el).width(); // 获取可移动总宽度
|
|
@ -41,7 +41,9 @@ define(['jquery', 'Hammer'], function ($, Hammer) {
|
41
|
41
|
_onPan: function (ev) {
|
42
|
42
|
var delta = ev.deltaX;
|
43
|
43
|
// console.log(ev);
|
44
|
|
ev.preventDefault(); // 防止左右滑动处理时,出现上下滚动
|
|
44
|
if (ev.srcEvent.cancelable) {
|
|
45
|
ev.srcEvent.preventDefault(); // 防止左右滑动处理时,出现页面上下滚动,因为增加监听事件时未处理,好像阻止不了
|
|
46
|
}
|
45
|
47
|
ev.srcEvent.stopImmediatePropagation(); // 防止左右滑动处理时,出现上下滚动,iScroll的情况
|
46
|
48
|
// console.log(ev.type, ev.deltaX);
|
47
|
49
|
|
|
@ -93,7 +95,7 @@ define(['jquery', 'Hammer'], function ($, Hammer) {
|
93
|
95
|
this.touchStartHandleFun = $.proxy(this._touchHandle, this);
|
94
|
96
|
$("body").on("touchstart", this.touchStartHandleFun);
|
95
|
97
|
},
|
96
|
|
_removeTouchStartListen(){
|
|
98
|
_removeTouchStartListen() {
|
97
|
99
|
$("body").off("touchstart", this.touchStartHandleFun);
|
98
|
100
|
},
|
99
|
101
|
_touchHandle(e) {
|