我一直在尝试使用向左和向右箭头键来移动“桨”。每当我按向左或向右键时,值都会正确更改,并且字符串似乎是正确的,但是.css()运行后,它只会返回原始值。请帮忙?
-用于调试的代码标记为//-

var paddx = 0;
var ball = document.getElementById('ball');
var ballx = 0;
var bally = 0;
var maxw = window.innerWidth;
var maxh = window.innerHeight;
$(document).keydown(function(keyPressed){
    paddle = document.getElementById('paddle');
    var temppaddx = window.getComputedStyle(paddle).getPropertyValue('left');
    paddx = parseInt(temppaddx, 10);
    console.log(temppaddx +" "+ paddx);//
    if (keyPressed.keyCode == 37){
        paddx -= 1;
        if (paddx < 5){
            paddx = 5;
        }
    }
    if (keyPressed.keyCode == 39){
        paddx += 1;
        if (paddx > maxw - 130){
            paddx = maxw - 130;
        }
    }
    temppaddx = paddx.toString(10) + 'px';
    console.log(temppaddx +" "+ paddx);//
    $('paddle').css('left',temppaddx);
    temppaddx = window.getComputedStyle(paddle).getPropertyValue('left');//
    console.log(temppaddx +" "+ paddx);//
});```

最佳答案

您正在使用document.getElementById('paddle'),但也在使用$('paddle')

为使jQuery的选择器找到正确的元素,应为$('#paddle')

07-28 04:58