все дело в "глобальных" переменных "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; удалить. Писал "на ум" но вроде должно работать.