1

我正在使用 ImpactJS 引擎 ( http://impactjs.com/ ) 构建游戏。游戏需要拖动和滑动等手势。因此,HammerJS 集成在代码中。

在下面的代码片段中,当左键单击绑定为 ig.input 时,不会触发释放事件回调。

init : function() {
    // The onRelease() is triggered when this is commented out.
    //ig.input.bind( ig.KEY.MOUSE1, "click" );

    Hammer( this.canvas ).on( "dragup", this.onDragUp.bind( this ) );
    Hammer( this.canvas ).on( "dragdown", this.onDragDown.bind( this ) );
    Hammer( this.canvas ).on( "release", this.onRelease.bind( this ) );
},

onRelease : function() {
    alert( "Released!" );
}

onDragUp : function( event ) { 
    //No problem here.
}

onDragDown : function( event ) {
   //No problem here.
} 

这里似乎有什么问题?谢谢。

4

1 回答 1

0

这解决了我的问题:

Hammer( this.canvas ).on( "dragup", this.onDragUp.bind( this ), {prevent_default: true} );

https://github.com/EightMedia/hammer.js/issues/538

于 2014-06-30T10:00:28.683 回答