Показать сообщение отдельно
  #3 (permalink)  
Старый 01.03.2011, 13:29
Интересующийся
Отправить личное сообщение для socengel Посмотреть профиль Найти все сообщения от socengel
 
Регистрация: 01.03.2011
Сообщений: 20

все дело в "глобальных" переменных "var hT, sT;" в которых содержиться таймер. когда курсор переходит на новое изображение то старый таймер заменяеться таймером другой картинки.

Цитата:
когда курсор переходит на новое изображение, для скрипта он по прежнему находится на изображении.
Так оно и есть для скрипта есть два изображения как на картинке и когда курсор в "красной зоне" то он находиться на двух изображениях одновременно когда курсор переходит в "синюю зону" тогда срабатывает ивент onmouseout но поскольку значения переписаны данными уже новой картинки то он просто "забывает"про существование старой картинки как буд-то ее и небыло.


как вариант создавать таймеры как свойство объекта картинки. но это уже другой скрипт...

Хотя:

clearTimeout(hT); заменить на clearTimeout(objId.hT);
sT=setTimeout('Show(\''+objId+'\', '+x+')',30); заменить на: objId.sT=setTimeout('Show(\''+objId+'\', '+x+')',30);

clearTimeout(sT); заменить на clearTimeout(objId.sT)
hT=setTimeout('Hide(\''+objId+'\', '+x+')',30); заменить на objId.hT=setTimeout('Hide(\''+objId+'\', '+x+')',30);

строчку var hT, sT; удалить. Писал "на ум" но вроде должно работать.

Последний раз редактировалось socengel, 01.03.2011 в 13:47.
Ответить с цитированием