使图像随机移动,点击
Make image randomly move onclick
我正在尝试使用纯javascript随机移动图像。点击事件后,图像位置应根据生成的随机数移动。
下面是我的代码:<html>
<head><title> Move Image </title>
<style type="text/css">
#smiley { position: relative; top: 0px; left: 0px; }
</style>
<script type="text/javascript">
function changeImg()
{
var x = Math.floor(Math.random()*300);
var y = Math.floor(Math.random()*300);
var obj = document.getElementById("emotion");
obj.style.top = x + "px";
obj.style.left = y + "px";
obj.onclick= "changeImg();"
}
</script>
</head>
<body>
<img id="emotion"
src="http://www.google.com/images/srpr/logo4w.png"
width="42" height="42">
</body>
</html>
任何想法?谢谢你!
在所有浏览器中不需要内联脚本
Codepen demo
var object = document.getElementById('item');
object.onclick=function(){
var x = Math.floor(Math.random()*300);
var y = Math.floor(Math.random()*300);
object.style.top = x + 'px';
object.style.left = y + 'px';
};
HTML <img id="item" src="http://...png" />
CSS #item {
cursor: pointer;
position: absolute;
top: 0px;
left: 0px;
transition: all 1s;
}
-
您从未将
changeImg()
分配给<img>
<img ... onclick="changeImg()">
-
如果您计划使用
top
和left
,元素必须是position: absolute
。 -
<img>
标签的ID是emotion
,不是smiley
-
您不需要在每次调用
changeImg()
函数时设置<img>
的onclick
属性。一次就够了。
您从未设置图像对象的位置。相反,你将"smiley"设置为相对的,但图像是"emotion"。
试
#emotion{ position: relative; top: 0px; left: 0px; }
我建议你调用函数而不是字符串字面值。例子:
obj.onclick = changeImg;
<html>
<head><title> Move Image </title>
<style type="text/css">
#emotion { position: absolute; top: 0px; left: 0px; border:1px solid red;}
</style>
<script type="text/javascript">
function changeImg()
{
var x = Math.floor(Math.random()*300);
var y = Math.floor(Math.random()*300);
var obj = document.getElementById("emotion");
obj.style.top = x + "px";
obj.style.left = y + "px";
}
</script>
</head>
<body>
<img id="emotion"
src="http://www.google.com/images/srpr/logo4w.png"
width="150" height="42" onclick="changeImg()"/>
</body>
</html>
相关文章:
- 简单的垂直上一个和下一个按钮代码点击上下移动jQuery
- 谷歌分析:如何跟踪移动网站的点击量作为对主网站的点击
- Video.js+移动设备上的谷歌IMA:'点击'导致错误的事件
- 用鼠标点击移动屏幕项目的顺序
- 需要在javascript或jquery中的Android或Iphone移动设备后退按钮点击事件
- Angular UI&引导程序:点击链接时折叠移动导航栏
- 谷歌地图点击事件移动标记
- 如何使移动用户可点击动态电话号码
- 剑道UI移动版 - 按钮点击时调用功能时出现问题
- 鼠标点击不会'不起作用,鼠标移动可以
- 监听touchend有时会触发移动点击事件
- 如何在点击链接后从用户取消对话框中获得回调以选择移动应用程序
- JS点击移动替代品 - 在iOS和Android上也弃用了onclick
- 传单.js路径点击移动设备
- jQuery 点击移动设备上的事件
- 点击移动混合动力车更换的问题
- jQuery on Button点击移动设备
- JQuery ul li点击移动到列表中的下五个元素
- 视频海报图像不显示,除非点击移动
- 如何一次显示一个段落的一个新单词,通过按键或鼠标点击移动