如何移动一个图像随机当你点击另一个图像使用html &javascript
How to move one image randomly when you click on the other image using html & javascript
我是javascript的初学者。我有两个图像。一个用于点击,另一个用于向左移动10px &正确的随机。一旦我点击"high5"图像,"pic2"图像必须在任何方向随机移动,不超过10个像素。每次点击都会添加到分数中,最后生成总分。我被困在这一点上,我不知道该去哪里。有人能帮帮我吗?如您所见,我已经编辑了我的代码。我仍然有问题:
- 创建记分牌以跟踪用户的点击次数在30秒内点击。
- 我需要一个30秒的定时器
- 每当中间的图片移动时,它就会一直移动到离开。
<!DOCTYPE html>
<!-- game.html
Uses game.js
Illustrates visibility control of elements
-->
<html lang="en">
<head>
<title>Visibility control</title>
<meta charset="utf-8" />
</head>
<body>
<div id="score">
0
</div>
<div id="high5" style="position: relative; left: 10px;">
<img onclick= "moveImg(); clicked();" src="pics/high5.jpg"
style="height:250px; width:250px; " alt="Minion High Five" />
</div>
<div id="pic2" style="position: relative; top: 20px; left: 650px;">
<img src="pics/pic2.gif" style="height:250px; width:350px;"/>
</div>
<script type="text/javascript" src="game.js" ></script>
</body>
</html>
javascript: var x = 0;
var y = 0;
var timer = 30;
var count = 0;
var isDone = true;
function moveImg() {
x += Math.floor(Math.random() * 20) - 10;
y += Math.floor(Math.random() * 20) - 10;
pic2.style.left = x + "px";
pic2.style.top = y + "px";
if(timer > 0) {
setTimeout("moveImg()", 50);
timer--;
}
else {
timer = 30;
}
}
function clicked() {
timer = 30;
count++;
score.innerHTML = count;
}
试试这样做:不要在HTML中使用onclick
。我已经添加了一些jquery的部分,如果你不需要改变它或告诉我。
var high5,myVar;
$(function(){
$("img").on("click",function(){
console.log($(this));
if($(this).data('id') == "minion"){
high5=document.getElementById('pic2');
high5.style.left="10px";
moveImg();
}
});
setInterval(function(){ myStopFunction(); }, 3000);//call to stop shacking after 3000 miliseconds.
});
function moveImg() {
//alert("hi");
var x;
x = Math.floor(Math.random()*4)+1;
left = parseInt(high5.style.left.replace('px', ''));
console.log(x+ "," +left);
if (x==4 && left >= 10) {
high5.style.left = (left - 10) + 'px';;
}
if (x==3 && left <= 650) {
high5.style.left = (left + 10) + 'px';
}
if (x==2 && left >= 10) {
high5.style.left = (left - 10) + 'px';;
}
if (x==1 && left <= 450) {
high5.style.left = (left + 10) + 'px';
}
myVar = setTimeout(function(){moveImg();},100);
}
function myStopFunction() {
clearTimeout(myVar);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id = "high5" style = "position: absolute;">
<img src="pics/high5.jpg" style="height:250px; width:250px;
margin-top: 50px; margin-left: 50px; border:none;"
alt="Minion High Five" data-id="minion"/>
</div>
<div id = "pic2" style=" position: absolute; width:350px;height:250px;margin-left: 550px;border:1px solid black;margin-top:150px;">
<img src="pics/pic2.gif" style="width:350px;height:250px;" alt="Minion High Five"/>
</div>
相关文章:
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 是否可以仅通过jQuery将图像替换为用户动态选择的另一个图像
- 如何在另一个html文件的框架中包含图像
- 当我点击MVC视图中的图像时,如何打开另一个页面
- 如何将图像制作为按钮并将其重定向到另一个页面
- 如何使用onclick事件点击一个图像,并让它更改同一网页上的另一个图像
- 如果我将宽度调整为另一个值,找出我的图像的高度
- 从imgur api的另一个浏览器拖放图像
- 使用漂亮的照片点击另一个元素显示图像
- 在 JavaScript 中将一个.PNG图像拖放到另一个图像上
- 如何在CSS中修复与另一个图像进行比较的图像
- 接受从另一个浏览器窗口拖放图像
- 在页面中使用了两次多个图像上传,但第一个正在工作,另一个不起作用
- 多个背景图像,一个覆盖另一个
- HTML链接到页面,但带有另一个图像(可以通过JavaScript更改)
- 使用 JQuery 从另一个元素的 id 为图像分配属性
- 用另一个替换现有图像
- Jquery-将图像从一个元素移动到另一个元素
- 当我在另一个画布上同时拖动另一个图像时,如何移动图像
- 当我点击一个图像时,如何将其更改为另一个图像