1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- /**
- * mui gesture flick[left|right|up|down]
- * @param {type} $
- * @param {type} name
- * @returns {undefined}
- */
- (function($, name) {
- var flickStartTime = 0;
- var handle = function(event, touch) {
- var session = $.gestures.session;
- var options = this.options;
- var now = $.now();
- switch (event.type) {
- case $.EVENT_MOVE:
- if (now - flickStartTime > 300) {
- flickStartTime = now;
- session.flickStart = touch.center;
- }
- break;
- case $.EVENT_END:
- case $.EVENT_CANCEL:
- touch.flick = false;
- if (session.flickStart && options.flickMaxTime > (now - flickStartTime) && touch.distance > options.flickMinDistince) {
- touch.flick = true;
- touch.flickTime = now - flickStartTime;
- touch.flickDistanceX = touch.center.x - session.flickStart.x;
- touch.flickDistanceY = touch.center.y - session.flickStart.y;
- $.trigger(session.target, name, touch);
- $.trigger(session.target, name + touch.direction, touch);
- }
- break;
- }
- };
- /**
- * mui gesture flick
- */
- $.addGesture({
- name: name,
- index: 5,
- handle: handle,
- options: {
- flickMaxTime: 200,
- flickMinDistince: 10
- }
- });
- })(mui, 'flick');
|