Обработчиком document.body.onload назначена функция:
function initilitto()
{
for(var i=1; i<=N_men; i++)
{
var dMen = document.getElementById('pun'+i);
dMen.onmouseover = function () {
if(uhodT[i-1]!==undefined)
{
clearInterval(uhodT[i-1]);
}
uhodT[i-1]=setInterval(vyhozhka, 20);
alert('Вылез '+i+'-й рулон');
}
dMen.onmouseout = function () {
if(uhodT[i-1]!==undefined)
{
clearInterval(uhodT);
}
uhodT[i-1]=setInterval(uhozhka, 20);
}
}
}
uhodT[] - массив с таймерами. Инициализированный со значениями undefined. Кстати, работоспособно ли?
uhodT=[
undefined,
undefined,
undefined,
undefined,
undefined
];
Если навести на любой из элементов с id=pun1...pun2 всплывает непременно "Вылез 6-й рулон", при этом N_men=5. Т.е. локальная иттерационная переменная цикла в конце инкрементируется, достигая значения 6, но, не пройдя условие продолжения цикла, не исчезает, а остаётся на плаву и используется назначенными на обработку событий функциями, как глобальная. Ну и всё, конечно, работает не как надо
Как ея победить?