Показать сообщение отдельно
Старый 24.11.2006, 16:32
KidsKilla вне форума Посмотреть профиль Отправить личное сообщение для KidsKilla Посетить домашнюю страницу KidsKilla Найти все сообщения от KidsKilla
  № 2  
Ответить с цитированием
KidsKilla
.grin! wuz here
 
Аватар для KidsKilla

Регистрация: Aug 2004
Адрес: paradise city
Сообщений: 3,981
Отправить сообщение для KidsKilla с помощью ICQ
Цитата:
Сообщение от navidim
ниже приведен скрипт, а проблема в нем вот какая:
рисунок сначала движется нормально, а потом начинает летать как бешеный (очень быстро)
почему это может происходить??? ведь я прибавляю все время по одному пикселю! Подскажите пожалуйста...

<script language="JavaScript">
function dem() {
document.all.risunok.style.posLeft+=1
setTimeout ('dem()', 100)
}
</script>
<body>
<img id="risunok" src="nevajno" style="position: absolute; z-index:0; left: -50px; top: 100px" onLoad="dem()">
</body>
1) забудь про document.all. он работает только в ие. есть правильный аналог: document.getElementById()

2)
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test</title>
</head><body><script type="text/javascript">
function dem(t) {
//	alert(t)
	t.style.left = (t.offsetLeft+1)+'px';
}
function startFunc(f,el,tmr){
//	alert([f,el.style,tmr]);
	f(el);
	return setInterval(function(){f(el)}, tmr)
}
</script>
<body>
<img id="risunok" src="http://194.67.27.119/images/default/default/ico_leader.gif" style="position:absolute;z-index:1;left:50px;top:100px;" onload="startFunc(dem,this,10);">
</body>
</html>