我们经常看到对象(可以是图形或文本)连续平移的动画效果,那么它是如何制作出来的呢? 总的思路:取得一个对象的横坐标值,并利用setTimeout函数使之递增或递减从而实现对象的平移效果。 首先我们需要在< body>TAG里定义一个对象: <DIV ID="blockDiv" STYLE="position:absolute; left:50; top:150; width:400;"> <IMG SRC="baby.gif" WIDTH=100 HEIGHT=136 BORDER=0> </DIV> 考虑浏览器的兼容问题,我们用以下代码段来提取对象的坐标值:(本例只提取横坐标值) ns4 = (document.layers)? true:false ie4 = (document.all)? true:false function init() { if (ns4) block = document.blockDiv if (ie4) block = blockDiv.style block.xpos = parseInt(block.left) } 然后用setTimeout函数制作平移效果: function slide() { if (block.xpos < 300) { block.xpos += 5 block.left = block.xpos setTimeout("slide()",30) } } 别忘了在< body>里加上 onLoad="init()" ,最后做一个链接试验一下效果: <A HREF="javascript:slide()">滑动</A>
|