关闭

JavaScript DOM编程艺术—javascript实现移动元素动画

标签: javascript
482人阅读 评论(0) 收藏 举报
分类:

将文档中的某个元素摆放到特定位置,并设置其移动至指定位置。

test.html

<!doucment html>
<html>
<body>
	<p id="message">Wheel!</p>
<script type="text/javascript" src="addLoadEvent.js"></script>
<script type="text/javascript" src="moveMessage.js"></script>
</body>
</html>

addLoadEvent.js

function addLoadEvent(func){
	var oldonload = window.onload;
	if(typeof oldonload != 'function'){
		window.onload= func;
	}
	else{
		oldonload();
		func();
	}
}

moveMessage.js

addLoadEvent(positionMessage);
//将元素指定到某个位置
function positionMessage(){
	var elem = document.getElementById('message');
	elem.style.position = "relative";
	elem.style.left="20px";
	elem.style.top="50px";
	elem.style.fontColor="red";
	moveMessage("message",200,100,10)
}
//将移动元素函数抽象
function moveMessage(elementID,end_x,end_y,interval){
	var elem = document.getElementById(elementID);
	var xpos = parseInt(elem.style.left);
	var ypos = parseInt(elem.style.top);
	if(xpos == end_x &&ypos == end_y){
		return true;
	}
	if(xpos < end_x){xpos++;}
	if(xpos > end_x){xpos--;}
	if(ypos < end_y){ypos++;}
	if(ypos > end_y){ypos--;}
	elem.style.left = xpos + "px";
	elem.style.top = ypos + "px";
	var repeat = "moveMessage('"+elementID+"',"+end_x+","+end_y+","+interval+")";
	movement = setTimeout(repeat,interval);
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:298324次
    • 积分:7804
    • 等级:
    • 排名:第2658名
    • 原创:498篇
    • 转载:42篇
    • 译文:3篇
    • 评论:44条
    个性签名
    业精于勤,荒于嬉;行成于思,毁于随。
    最新评论