Как при каждом нажатии добавлять пикселей к отступу?
Здравствуйте. Пишу (пытаюсь) написать браузерную игру на jQuery.
Возник вопрос: как при каждом нажатии передвигать машину, например, в лево?
Чтобы, допустим, прибавлялось по 50 пикселей после нажатия.
Как такое сделать?
Отслеживать клавиши я умею.
Ну, раз умете отслеживать нажатия клавиш, то прибавляйте или убавляйте координату X у того объекта, что у вас выступает в роли машины. Естественно, отслеживайте, чтобы следующий шаг не был меньше минимальной и не больше максимальной координаты.
А как машина и поле размечены? Можешь добавлять margin-top, margin-left! Или же если поле на позициях, то просто добавлять top left) Верстать то умеешь, вот и двигай блоки по нажатию на кнопку)
Условно, это будет выглядеть так.
Два обработчика события. В них прописаны переопределение свойства координаты объекта #машина.
Естественно названия двигай_влево, двигай_вправо, #машина, свойство_отвечающее_за_смещение_по_X взяты от балды, но логика работы примерно такая.
function двигай_влево()
{
if($('#машина').свойство_отвечающее_за_смещение_по_X - 50 >= 0)
$('#машина').свойство_отвечающее_за_смещение_по_X -= 50;
}
function двигай_вправо()
{
if($('#машина').свойство_отвечающее_за_смещение_по_X + 50 <= 600)
$('#машина').свойство_отвечающее_за_смещение_по_X += 50;
}
function обработчик_нажатия_клавиш()
{
var код_клавиши = источник_события.КодКлавиши;
if(код_клавиши == клавиша_влево)
двигай_влево();
if(код_клавиши == клавиша_вправо)
двигай_вправо();
}