javascript鼠标跟随的问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 16:28:25
问题在于延时的问题,延迟应该是两个函数之间的
延迟,为什么我把时间设大一点,
两个字符之间位置改变的时间间隔也会加大呢
---------------------------------------------------------
function makeSnake()
{
//设置字符的位子
for(i=message.length-1; i>=1; i--)
{
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y

//通过CSS改变字符位置
for(i=0; i<message.length; i++)
{
var thisspan=eval("span"+i+".style")
thisspan.posLeft=xpos[i]
thisspan.posTop=ypos[i]
}

setTimeout("makeSnake()",300)
}
我觉得这几个字应该是一起过来的
怎么会有时间间隔呢
没有鼠标移动,我先把鼠标放好,然后按f5刷新,
发现字是一个一个过来的,设置的时间越大,过来的越慢

setTimeout("makeSnake()",300)

后一个字符串的位置是根据前一个字符串的位置决定的。
所以你把时间设大后,前一个字符串已经到了新位置(鼠标的位置),但是后一个字符还要等很长时间才能到前一个字符串的旧位置..
所以鼠标移动距离打的话,字符间隔就很大,且缓慢地变化(时间设大了也即等到变化位置的时间长了)

我想其实字符的位置本来间隔就大 只是延迟小的时候代码执行快你感觉不到字符的间隔