我在onTouchBegin
函数中遇到此问题,我希望在屏幕上更新精灵的位置。但是如果我在更新功能中使用这行代码就可以完美地运行。
this.sprite.x += 5;
现在,如果我将这行代码放在onTouchBegin
或任何onTouch
方法中,我会收到此错误"Uncaught TypeError: Cannot read property 'x' of undefined"
。
当我在chrome控制台中调试这个时,存在当前js
文件的局部变量,并显示为附加了所有属性和属性的实例化变量。然后,当我单击屏幕时,调试器会在onTouchBegin
函数内暂停。此时所有变量似乎都超出了范围,因为它们都显示为undefined
或NaN
或其他内容。
我无法理解为什么会发生这种情况,如果有人能给我一些有关如何解决这个问题的见解,那将是值得赞赏的。
答案 0 :(得分:0)
显然在回调函数中,当返回回调时,event参数附加了一些属性,称为getCurrentTarget。这返回了包含在更新函数中正确使用的所有变量的js文件。
onTouchBegan:function(touch, event)
{
var target = event.getCurrentTarget();
},