所以我正在尝试使用CreateJS创建游戏,其中包括TweenJS和EaselJS。
以下是我正在使用的代码示例 -
var shape = new createjs.Shape();
shape.graphics.beginFill("Red").drawRoundRect(50, 50, 300, 200, 20);
这只是创造了形状。我希望移动设备能够轻松点击它而不会有任何延迟。 我试过了fastclick.js,但它只适用于DOM Elements而不是EaselJS形状。
我使用shape.on('click')
方法生成一个简单的点击。我试图做shape.on('touch')
,但没有成功。
我正在使用一个名为PhoneGap的应用程序,它将HTML网页转换为应用程序。
我试图寻找许多资源来帮助我解决这个问题,但我还没有找到。有人可以帮我找出我能做些什么来解决这个问题吗?
答案 0 :(得分:0)
你能提供更多代码吗?如何将事件监听器绑定到createjs-Shape?您可以使用easeljs"在"上绑定它们。方法(http://createjs.com/docs/easeljs/classes/EventDispatcher.html#method_on)。触摸设备不应该是延迟。
shape.on("click", function(event) {
// to something
});
请注意,您可以使用CSS-Property touch-action
并将其设置为manipulation
以摆脱较新浏览器(> Safari 9.1)中的触摸延迟:
https://developer.apple.com/library/prerelease/mac/releasenotes/General/WhatsNewInSafari/Articles/Safari_9_1.html#//apple_ref/doc/uid/TP40014305-CH10-SW8
答案 1 :(得分:0)
实际上非常简单 -
我无法相信我以前没见过这个。 shape.on("click")
无效,因为它未在CreateJS Touch API中启用。
你只需要在这里包含一行代码 -
createjs.Touch.enable(stage);
这可以绑定事件以使它们保持联系。它们在这里定义 - http://www.createjs.com/docs/easeljs/classes/Touch.html