Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   HTML/DHTML/CSS/JS/VB (http://www.flasher.ru/forum/forumdisplay.php?f=66)
-   -   бешеная картинка (http://www.flasher.ru/forum/showthread.php?t=88495)

KidsKilla 24.11.2006 21:07

Цитата:

Сообщение от navidim
ладно, спасибо большое за помощь, но бабочка по-прежнему улетает весьма быстро...
ещё один вопрос и все: "пытаешься заточить жс код только под ие. за это руки отрывать"
в чем именно, и как этого избежать?

1) проверять как это работает в других браузерах
2) не использовать специфические для ие штуки типа posLeft и document.all
3) делать в соответствии со стандартами (доки по стандартам можно найти в этой же ветке в прикреплённой теме)

KidsKilla 24.11.2006 21:22

Код:

<!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)
        var w = document.documentElement.clientWidth || document.body.clientWidth || window.innerWidth;
        var h = document.documentElement.clientHeight || document.body.clientHeight || window.innerHeight;
        t.style.left = (t.offsetLeft>w-t.offsetWidth) ? '0' : (t.offsetLeft+1)+'px';
        if(!t.offsetLeft) test.innerHTML += 'new line at: '+getT();
}
function startFunc(f,el,tmr){
//        alert([f,el.style,tmr]);
        f(el);
        var test = document.getElementById('test');
        test.innerHTML += 'start at: '+getT();
        return setInterval(function(){f(el)}, tmr);
}

function getT(){
        var d = new Date();
        return d.getHours()+':'+d.getMinutes()+':'+d.getSeconds()+'<br>';
}
</script>
<body>
<div id="test"></div>
<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>

тест:

start at: 20:21:23
new line at: 20:21:29
new line at: 20:21:35
new line at: 20:21:42
new line at: 20:21:48
new line at: 20:21:55
new line at: 20:22:1
new line at: 20:22:8

как видишь разница стабильна (6-7 секунд)

navidim 25.11.2006 13:30

Цитата:

Сообщение от KidsKilla
как видишь разница стабильна (6-7 секунд)

я просто в шоке! запускаю твой скрипт - работает, запускаю свой старый скрипт с другой картинкой работает,
запуская твой скрипт с БАБОЧКОЙ - не работает, мой с БАБОЧКОЙ тоже не работает!!!!!!!!!
как это может зависеть от GIF файла???????
бред, просто бред :(

спасибо тебе за уроки KidsKilla

navidim 25.11.2006 15:14

Я понял! картинка ускоряется если в ней есть анимация! статические изображения ведут себя нормально!
почему так происходит?? печально...

navidim 25.11.2006 15:33

ПРОБЛЕМА РЕШЕНА!!!!!!!!!!!! надо было просто вызывать функцию с setInterval из <body onLoad=""> а не из <img onLoad="">

спасибо огромное KidsKilla, за то, что помогал мне!
тема закрыта!


Часовой пояс GMT +4, время: 19:07.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.