Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Не загружаются картинки (https://javascript.ru/forum/dom-window/66197-ne-zagruzhayutsya-kartinki.html)

am_sasa 30.11.2016 14:16

Не загружаются картинки
 
Всем привет!
В браузере JS формирую новую страницу для печати штрихкодов, за которыми иду на сервер. Вот содержание странички
<html>
<title>Печать этикеток</title>
<body style="margin:0; padding:0">
<div style="width:50mm;height:40mm;font-size:5mm;position:relative;background-color:#eee;overflow:hidden;margin:0;padding:0">
<img style="position:absolute; cursor:pointer; top:5px; left:5px; width:10mm; height:10mm;" src="/ctrl/ctrl/DM.ctrl?label=279" data-field="DM">
</div>
</body>
</html>

Как правило вначале, картинки штрихкодов не высвечиваются. Подозрение - долго отрабатывает (JIT) серверный скрипт. После F5 все подкачивается.
Можно как то это побороть?

ksa 30.11.2016 14:23

Цитата:

Сообщение от am_sasa
Подозрение - долго отрабатывает (JIT) серверный скрипт.

Так ты его (подозрение) проверь...

Гробовщик 30.11.2016 14:24

После F5 у тебя картинки из куков грузятся. Может пообновляться через ctrl+F5 и увидишь что картинки грузятся долго каждый раз...
Непонятно что лежит на /ctrl/ctrl/DM.ctrl?label=279. Может в самом серверном скрипте картинка формируется долго и тогда дело не в JS и на этом форуме едва ли помогут
Опиши своё задание точнее, может появятся ответы на твои вопросы

am_sasa 30.11.2016 14:43

Цитата:

Сообщение от Гробовщик (Сообщение 436633)
Непонятно что лежит на /ctrl/ctrl/DM.ctrl?label=279.

это серверный скрипт создания картинки со штрихкодом.

Похоже дело не во времени исполнения скрипта.
Лог показывает, что на сервер запрос идет два раза за каждой картинкой.

am_sasa 30.11.2016 14:50

цикл создания штрихкодов, здесь может быть запрос на сервер?
var	tempDiv=document.createElement('div');
tempDiv.innerHTML = '<div style="width:50mm;height:40mm;font-size:5mm;position:relative;background-color:#eee;overflow:hidden;margin:0;padding:0">\
<img style="position:absolute; cursor:pointer; top:5px; left:5px; width:10mm; height:10mm;" src="/ctrl/ctrl/DM.ctrl?label=279" data-field="DM">\
</div>';

и в конце цикла
prn.document.write(tempDiv.innerHTML)

am_sasa 30.11.2016 15:01

Если делать формировать страницу в текущей
window.document.write
, то все ОК! (запрос идет на сервер один раз), а если в новую
window.open().document.write
, то два раза.
Нужно в новую, чтобы текущую не затирало.

am_sasa 30.11.2016 16:50

Победил!!!:dance:
Действительно
img.src='нечто'
выдает запрос на сервер - это раз.
window.open().document.write(textHtml)
делает еще запрос - это два, что логично, и если они идут вместе (случайным образом), то на сервере генерится неправильная картинка.


Часовой пояс GMT +3, время: 11:38.