我在学校准备Game Jam并遇到了问题。在这段代码中,我试图这样做,当你按下右箭头键时,它会移动角色。但是这个功能让它从右边而不是右边移动。
这是我的代码---
var main = function() {
var moveRight = function() {}
var wall = function() {
wall = $('.header')
}
$(document).keypress(function(event) {
if(event.which === 32) {
$('.header').animate({
bottom: "-31px"
},1000)
}
});
$(document).keydown(function(event) {
if(event.which === 39) {
$('.character').animate({
right: "400px"
},1000)
}
});
}
$(document).ready(main);
问题出在这里---
$(document).keydown(function(event) {
if(event.which === 39) {
$('.character').animate({
right: "400px"
},1000)
}
});
感谢您的帮助。
答案 0 :(得分:1)
在css中,right
属性描述了元素右侧与其容器右侧之间的距离。考虑一个人站在"左墙"和#34;右墙"。在CSS中,如果他们有right: 0
,他们的右侧正在接触右侧墙。使用right: 3px
时,它们的右侧距离该墙3像素。如您所见,增加right
移动元素LEFT 。您可能有兴趣使用left
属性而不是right
:
$(document).keydown(function(event) {
if (event.which === 39) {
$('.character').animate({ left: "400px" }, 1000);
}
});
虽然它有一些应用程序,但在您的特定情况下混合left
和right
属性可能不是一个好主意。确保您再也不使用right
属性,而是用right
替换left
的每个使用实例!