2017-12-08 4 views
1

Ich mache ein Flugzeug Spiel. Um Raketen abzuschießen, benutze ich JavaScript-Funktionen, die divs mit der Klasse der Rakete erstellen und die Position meines Flugzeuges verwenden, um die Rakete zu positionieren.CSS Positionierung auf keyDown

Das Problem ist mit meiner Top-Positionierung.

Hier ist meine keyDown Funktion ...

document.onkeydown = function(e) { 
     (e.keyCode === 37) ? player.left-= 10 
     : (e.keyCode === 38) ? player.top-= 10 
     : (e.keyCode === 39) ? player.left += 10 
     : (e.keyCode === 40) ? player.top += 10 
     : (e.keyCode === 32) ? missiles.push({top: player.top - 8, left: player.left + 34}) 
     : player = player; 
     drawMissiles(); 


     (player.top <= 400) ? player.top = 400 
     : player = player; 



     drawPlayer(); 
} 

Dies ein Objekt zu einem leeren Rakete-Array mit den Eigenschaften von „oben“, ergänzt und „links“.

ich dann eine JavaScript-Funktion als meinen CSS-Stil, wie so dass div zu meinem HTML mit den oberen und unteren Eigenschaften hinzufügen zu werden ..

function drawMissiles() { 
      let content = ""; 
      missiles.map(function(missile) { 
       content+= "<div class='missile' style='left:"+missile.left+"px;, top:"+missile.top+"px;'></div>" 
        document.getElementById("missiles").innerHTML = content; 
       }) 
      } 
     drawMissiles(); 

My „links“ Eigenschaft arbeitet verwendet , aber mein "Top" ist nicht. Meine Raketen landen oben auf meiner Seite.

Pic included.

+0

Tippfehler im Stil Eigenschaft –

Antwort

1

Sieht aus wie ein Tippfehler. Sie haben ein Komma nach dem ersten Semikolon in Ihrem Stil-Tag.

+0

Lmao. Eine Million Dankeschöns. –