открытие в новом окне через javascript

dimidrol
На сайте с 29.09.2005
Offline
191
632

Есть известный скрипт

function viewImage(src)

{
// загружаем изображение
prevImg = new Image();
prevImg.src = src;

// получаем высоту и ширину
w = prevImg.width;
h = prevImg.height;

viewer = window.open(src, "PREV", "width=" + w + ",height=" + h + "toolbar=no,status=no,scrollbars=no,menubar=no,resizable=no");

viewer.document.body.style.padding = 0;
viewer.document.body.style.margin = 0;
viewer.document.body.style.textAlign = "center";

viewer.resizeTo(w+20,h+20);
viewer.focus();
return false;
}

который открывает картинку в новом окне по вызову

<area SHAPE=POLY COORDS="125,145,20,251,26,258,7,276" HREF="/files/pic.gif" onclick="return viewImage(this.href);">

проблема в том, что при первом клике открывется окно размером в 30 на 29, а при втором и следующем клике - на полный размер изображения (как и указано в скрипте). В чем может быть загвоздка? Спасибо.

Иногда полезно проигрывать - это держит тебя в тонусе... Мне так рассказывали (с) Shark Покупаю сайты (стройка/отделка/стройматериалы) по адекватной цене. Предложения в личку. Траф - обязателен
[umka]
На сайте с 25.05.2008
Offline
456
#1

Возможно, после первого клика картинка не успевает подгрузиться и, соответственно, не удается получить её размер.

По-идее, после вот этого:

prevImg = new Image();
prevImg.src = src;

нужно повесить обработчик prevImg.onLoad, и в нём уже открывать окно / измененять его размеры / и т.п.

Лог в помощь!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий