polaryeti Posted January 11, 2023 Share Posted January 11, 2023 <div class="body"> <div id="board"> <div id="bat" class="bat"></div> <div id="ball" class="ball"></div> </div> </div> This is my HTML. I've done CSS For all of them and generated this: Now, I want the bat to move left and right when I press arrow keys. window.addEventListener("keydown", function (e) { switch (e.key) { case "ArrowLeft": batDir.x = -1; batDir.y = 0; paintBat(batDir.x, batDir.y); break; case "ArrowRight": batDir.x = 1; batDir.y = 0; paintBat(batDir.x, batDir.y); break; } }) My goal is to paint the bat at new position. I'm wondering how to do it. The logic should be newBatPosition.x=oldBatPosition.x+batDirection.x newBatPosition.y=oldBatPosition.y+batDirection.y But what will do the job of painting newBatPosition.x and newBatPosition.y is what I'm not clear of. I'm not using canvas. Plus, what'll be the oldBatPosition? I've used CSS to paint them. So, I'm wondering how do I get oldBatPosition coordinates as well. I just made a similar project using tutorial and it's just disheartening that I can't make this project. https://codepen.io/pelko/pen/jOpBmPN Quote Link to comment https://forums.phpfreaks.com/topic/315784-how-to-paint-an-element-in-screen-using-javascript/ Share on other sites More sharing options...
requinix Posted January 11, 2023 Share Posted January 11, 2023 You probably ought to be using canvas for this instead of the DOM. You aren't "painting" anything here. All you need to do is use CSS's top and left to position the object where you want it to go. Quote Link to comment https://forums.phpfreaks.com/topic/315784-how-to-paint-an-element-in-screen-using-javascript/#findComment-1604541 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.