Показать сообщение отдельно
  #4 (permalink)  
Старый 25.06.2010, 08:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Nevi,
ask++; у тебя успевает сосчитать до 98
по m[0]>98 нужно и останавливать таймер и запускать новый и увеличивать ask проверяя не превысил ли он snd.length и восстанавливать в добавок параметры m (opacity)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title></title>
<script language="JavaScript" type="text/javascript">
var m = Array(0, 100),
    t = [],
    ask = 0;
snd = [];
snd[0] = "http://lstm.ru/_ph/12/1/478826110.jpg";
snd[1] = "http://lstm.ru/_ph/12/1/211468258.jpg";
snd[2] = "http://lstm.ru/_ph/12/1/980939750.jpg";
window.onload = next;

function next() {
    var a = ask + 1;
    if (a == snd.length) a = 0;
    document.getElementById("kartinka").src = snd[ask];
    document.getElementById("kartinka2").src = snd[a];
    m[0] += 1;
    m[1] -= 1;
    document.getElementById("kartinka").style.opacity = m[1] / 100;
    document.getElementById("kartinka").style.filter = " alpha(opacity=" + m[1] + ")";
    document.getElementById("kartinka2").style.opacity = m[0] / 100;
    document.getElementById("kartinka2").style.filter = "alpha(opacity=" + m[0] + ")";
    t[0] = setTimeout("next()", 20);
    if (m[0] > 98) {
        clearTimeout(t[0]);
        setTimeout("next()", 2000);
        ask++;
        if (ask == snd.length) ask = 0;
        m = [0, 100]
    }

};
</script>
</head>
<body>
<div id="poster">
<img id="kartinka" src="http://lstm.ru/_ph/12/1/478826110.jpg" style="opacity: 1; filter: alpha(opacity=100);margin: 0px; padding: 0px; position:absolute; top: 0px; left: 0px;">
<img id="kartinka2" src="http://lstm.ru/_ph/12/1/211468258.jpg" style="opacity: 0; filter: alpha(opacity=0);margin: 0px; padding: 0px; position:absolute; top: 0px; left: 0px;">
</div>
</body>
</html>
Ответить с цитированием