Вопрос

Я пытаюсь использовать Raphael для создания небольшой игры и просто хочу получить небольшой совет по некоторому коду, над которым я работаю.

Вот что у меня есть на данный момент, это всего лишь простой пример перемещения круга по экрану:

<script type="text/javascript" charset="utf-8">
window.onload = function () {
  var paper = Raphael(10, 50, 320, 200);
  var paper = Raphael(document.getElementById("holder"), 320, 200);
  var paper = Raphael("holder", 320, 200);

  var startx = 30;
  var starty = 30;
  var ANIM_STEP = 5;

  var d = paper.circle(startx,starty,20);
  d.attr("fill", "blue");
  document.onkeyup = function (e) {
    var keyid = e.keyCode;

    switch (keyid)
    {
      // right arrow key
      case 39:
        startx += ANIM_STEP;
        d.cx = d.cx || startx ;
        d.animate({cx: d.cx}, startx);
      break;
    }
  }
};
</script>

Теперь текущая проблема, с которой я сталкиваюсь, заключается в том, что она анимируется только при первом нажатии клавиши со стрелкой вправо.Я проверил, что 'startx' увеличивается с помощью некоторой отладки трассировки.

Я начал с картины Рафаэля пример круга и немного размять в пюре из ичарт, так что мой способ может быть не самым лучшим...Я с нетерпением жду ваших предложений :)

Это было полезно?

Решение

Д'о

нужно установить d.cx = startx ....помогает обновлять ваши переменные!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top