Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.10.2009, 11:58
Новичок на форуме
Отправить личное сообщение для chuser Посмотреть профиль Найти все сообщения от chuser
 
Регистрация: 14.10.2009
Сообщений: 4

Как в JS открыть новое окно с размерами как у картинки
Задача такая: открыть новое окно и сделать его размеры равными размерам изображения, путь к которому передается в параметре img_url. Загружаю изображение и функцией checkLoad проверяю загрузилось оно или еще нет. В функции checkLoad использую рекурсию. Функция checkLoad должна выполняться пока изображение не загрузится, т.е. пока условие myImage.complete не станет true. Но нифига не работает. А вот, если в блоке else раскомментировать строку alert('no'), то все нормально работает. Зацикливание происходит. Ну естественно при каждой проверке выскакивает сообщение с текстом "no".
А вот, если строку alert('no') убрать, то не работает.
В чем проблема? Не могу разобраться. Уже полдня сижу и туплю.

function new_win(url, img_url) 
{
var myImage = new Image();
myImage.src = "http://ekkirpich.ru" + img_url;
checkLoad();

function checkLoad(){
if(myImage.complete){
  var w = myImage.width;
  var h = myImage.height;
  var wTop = screen.height / 2 - h / 2;
  var wLeft = screen.width / 2 - w / 2;
  var param = "width=" + w + ",height=" + h + ",left=" + wLeft + ",top=" + wTop;
  newWin = window.open(url, "myWindow", param);
}
else{
  //alert('no');
  checkLoad();}
}
}

Последний раз редактировалось Octane, 19.10.2009 в 00:27. Причина: используйте теги [html] и [js] для оформления кода
Ответить с цитированием
  #2 (permalink)  
Старый 19.10.2009, 00:14
Аспирант
Отправить личное сообщение для arma Посмотреть профиль Найти все сообщения от arma
 
Регистрация: 18.10.2009
Сообщений: 50

зацикливать функцию на себя имхо тупо, сделайте через setTimeout и фсё будет работать.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка блока php в js...Как сделать? reup Общие вопросы Javascript 2 30.07.2009 11:02
Как закрыть динамичное окно вместе\после родительского? Vilmos Элементы интерфейса 1 16.07.2009 20:54
Новое окно с рисунком Vilmos Элементы интерфейса 2 24.06.2009 23:59
Как "переключать" картинки в меню навигации? KirTer Элементы интерфейса 1 22.06.2009 11:49
Как узнать свернуто окно браузера или нет. bar-boss Events/DOM/Window 3 25.09.2008 16:09