Показать полную графическую версию : [решено] Определение наличия рисунка
System Failure
14-02-2009, 00:12
Доброго времени суток!
Столкнулся со следующей проблемой...
Генерируется особым образом код - по этому коду вставляется на странице изображение. Дело в том, что требуется, если такого изображения в наличии не имеется - чтобы выполнялся альтернативный код. Как можно это организовать на JS? Заранее спасибо!
Prisoner
14-02-2009, 12:44
Приветствую.
Генерируется особым образом код - по этому коду вставляется на странице изображение. »
Вот можно об этом подробнее? Кем генерируется, кем по сгенеренному вставляется?
Не знаю, правильно ли я понимаю, но наличие или отсутствие картинки я бы определял серверными методами и генерировал бы код так:
<img src="/some/exist/image.jpg" width="X3" height="X3" alt="X3">
<img src="/some/not_exist/image.jpg" width="X3" height="X3" alt="X3" class="imageNotExist">
А вот после загрузки DOM выбирал картинки с соответствующим классом.
System Failure
14-02-2009, 14:44
в ЯваСкрипте генерируется код...
ну в общем есть определенный исходный код в шестнадцатеричном формате. в этом коде зашифрованы некоторые параметры некоего объекта... согласно этим параметрам генерируется код для картинки... к примеру 00A580F9.gif . В базе имеется большой набор таких картинок, для каждого объекта своя. но бывает что генерируется код для несуществующей картинки, которой нет в базе... временно решил проблему, тем что задал проверку на ширину картинки. если ширина картинки равна ширине значка отсутствия изображения - то выполняется альтернативный код.
пример:
table.rows[x].cells[y].innerHTML = "<img src='items/" + tnpl + itype + tipaj + nxt + ".gif' id='" + tnpl + itype + tipaj + nxt + "' onmouseout='hideInfo();' onmousemove='getCoords(event);showInfo(" + lvl + "," + g + "," + h + ")'>";
Prisoner
14-02-2009, 19:47
Ага. Ну тогда имеет смысл поиграться с обработкой событий onLoad и onError для изображения. Точнее даже именно onError:
<img src="" width="" height="" alt="" onerror="imgErrorHandler()">
Возможны проблемы с Оперой - в моем тесте событие для отсутствующего изображения срабатывало дважды.
System Failure
15-02-2009, 01:02
о, спасибо.... попробую поиграться - посмотрим что получится - обязательно отпишу рез-тат :)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.