簡體   English   中英

如何在javascript中隨機移動圖片

[英]how to move a picture randomly in javascript

當我用addEventListener單擊鼠標時我如何隨機移動球,我嘗試了此代碼但圖片沒有移動。 此代碼有什么問題?

html代碼:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<script src="work.js"></script>

<link type="text/css" rel="stylesheet" href="work.css">
</head>

<body>

<div id = "frame" >
<div id = "net1"> </div>
<div id = "net2"> </div>
<div id = "centerPoint"> </div>
<div id = "centerLine"> </div>
<img src="SoccerBall.png" width="40" alt="Ball" class="moveBall">
</div>

</body>

</html>

JavaScript代碼

var ball = document.querySelector('.moveBall');
function bbb(){

var ball = document.querySelector('.moveBall');

var x = Math.floor(Math.random()*300);
var y = Math.floor(Math.random()*300); 
ball.style.left = x + 'px';
ball.style.top = y + 'px';
};

document.querySelector('#frame').addEventListener('click',bbb);

這是我的CSS代碼:

     #frame{
         border:solid thick red;
         border-width:3px;
         padding-left:9px;
         padding-top:6px; 
         padding-bottom:6px;
         margin:2px;
         width:1220px;
         height:1000px;
         float:right;
         background-color:green;

      }


 .moveBall {
    position:absolute;
    top: 0px; 
    left: 0px; 
     }
  #net1{

 background-color: lightgray;
 width: 400px;
 padding: 40px;
 margin: auto;

  }

 #net2{

 background-color: lightgray;
 width: 400px;
 padding:40px;
 margin:auto;
 margin-top:840px;

增加風格position:absolute

 (function() { function bbb(){ var ball = document.querySelector('.moveBall'); console.log(ball); var x = Math.floor(Math.random()*300); var y = Math.floor(Math.random()*300); ball.style.left = x + 'px'; ball.style.top = y + 'px'; }; document.querySelector('#frame').addEventListener('click',bbb); })(); 
 #frame{ border:solid thick red; border-width:3px; padding-left:9px; padding-top:6px; padding-bottom:6px; margin:2px; width:1220px; height:1000px; float:right; background-color:green; } .moveBall { width:40px; height:40px; position:absolute; top: 0px; left: 0px; border-radius:50%; border:1px solid red; } #net1{ background-color: lightgray; width: 400px; padding: 40px; margin: auto; } #net2{ background-color: lightgray; width: 400px; padding:40px; margin:auto; margin-top:840px; } 
 <div id = "frame" > <div id = "net1"> </div> <div id = "net2"> </div> <div id = "centerPoint"> </div> <div id = "centerLine"> </div> <img src="http://via.placeholder.com/350x150" width="40" alt="Ball" class="moveBall"> </div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM