<img src="http://192.168.0.7:8300/images/logo_home.gif" style="position:absolute;" id="person" /><script>
document.onclick = function(){
person.style.top = event.clientX
person.style.left = event.clientY
};
</script>
document.onclick = function(){
person.style.top = event.clientX
person.style.left = event.clientY
};
</script>
解决方案 »
- js函数参数问题
- 关于正则表达式的问题
- 1 + 2 + 3 + ... + x 的结果是:x / 2 * ++x
- 没搞清楚,在发一遍,大家帮俺解释下吧谢谢啊
- ActionScript 怎么获取子对象?
- 样式设置问题
- 很头疼的一个问题,请大家帮帮忙
- 如何重新加载select?
- 文字滚动可以用MARQUEE来做,但是我想让文字在页面启动的时候,文字就出现,然后滚动,并且开头的一行文字和末尾的文字循环起来
- 如何实现:当打开一个页面时,如何让一个隐藏的层(装着小图片)显示在页面某一位置(该位置坐是动态变化的),当鼠标移动到该层时,该层
- 动态生成的表单,验证的问题,能否给点思路
- eval()函数的使用问题,很初级,但是我不会
要不你找几张静态的图轮番换起走
如果只想一张图用JS要实现小人那种走路的动作是不可能的
<html>
<head>
<title>Test</title>
<script language="javascript">
var ox,oy,ex,ey;
var stepx,stepy,TimeSpan=20;
var ts=null;
document.onclick=Handler;
var MoveObj=null;
window.onload=function()
{
MoveObj=document.getElementById("pic");
}
function Handler(e)
{
clearInterval(ts);//
e=e||event;
var pic=document.getElementById("pic");
ox=parseInt(pic.style.left);
oy=parseInt(pic.style.top);
ex=e.clientX;
ey=e.clientY;
if(ex>ox)
{
stepx=1;
}
else
{
stepx=-1;
}
stepy=(ey-oy)/(ex-ox);//根据比例算出y方向的移动速度
ts=setInterval("movePic()",TimeSpan);
}
function movePic()
{
ox+=stepx;
oy+=stepy;
if(stepx>0)
{
if(ox<=ex)
MoveObj.style.left=ox+"px";
else
MoveObj.style.left=ex+"px";
}
else
{
if(ox>=ex)
MoveObj.style.left=ox+"px";
else
MoveObj.style.left=ex+"px";
}
if(stepy>0)
{
if(oy<=ey)
MoveObj.style.top=oy+"px";
else
MoveObj.style.top=ey+"px";
}
else
{
if(oy>=ey)
MoveObj.style.top=oy+"px";
else
MoveObj.style.top=ey+"px";
}
if(parseFloat(MoveObj.style.top)==parseInt(ey)&&parseFloat(MoveObj.style.left)==parseInt(ex))
clearInterval(ts);
}
</script>
</head>
<body>
<img src='1.jpg' id="pic" style='position:absolute;left:0px;top:0px;width:120px;height:100px'/>
</body>
</html>