我想要实现的是改变玩家在JQuery游戏中的移动方式 如果他们点击/ mousedown在文本上,而不是按键,我试图让玩家移动,ID为“left”。
原始代码如下。
if(jQuery.gameQuery.keyTracker[65]){ //this is left! (a)
var nextpos = parseInt($("#player").css("left"))-5;
if(nextpos > 0){
$("#player").css("left", ""+nextpos+"px");
}
}
我的代码如下,当我玩的时候,它只是连续移动玩家而没有按任何东西。它应该不会向左移动,直到我在“左”id文本上单击或mousedown。
if ($('#left').mousedown){
var nextpos = parseInt($("#player").css("left"))-5;
if(nextpos > 0){
$("#player").css("left", ""+nextpos+"px");
}
}
答案 0 :(得分:1)
此:
if ($('#left').mousedown){
永远是真的。您正在检查$()
是否具有mousedown
属性,并且它始终是因为所有jQuery对象都具有mousedown
方法。您可能想要绑定一个mousedown事件处理程序:
$('#left').mousedown(function(e) {
//...
});