Просмотр полной версии : Загрузка крупных картинок в Flash галереи
Доброго времени суток всем флешерам!!! Сейчас пишу Flash галерею и возникла проблема. При нажатии на превьюшку, картинка должна появится в крупном виде в отдельном клипе. Это я сделал. Но ширина у них глючит. При первом нажатии на превьюшку ширина крупной картинки равна 0. При втором стандартной ширине картинки. А при третьем уже устанавливается ширина которую я задаю Гляньте плизз. Ваще не понимаю в чем проблема. На вас одна надежда:o Код не буду писать, а прикреплю исходник
Доброго, юзай MovieClipLoader и лови onLoadInit после чего смотри ширину картинку.
Я так и сделал. Вы исходник то посмотрели??? Там же так и сделано. Но не понятно почему глючит
Вам нужен второй MovieClipLoader для подргузки полноразмерных изображений. Да и не пойму зачем цикл внутри onLoadInit? onLoadInit срабатывает после каждой успешной загрузки. Т.е.:
for (i=1; i<=max_pic; i++) {
_root.scroll.box.createEmptyMovieClip("pic"+i, i);
pic_load.loadClip("pictures/"+i+".jpg", _root.scroll.box["pic"+i]);
}
тут вы грузите в нашем случае 3 раза, и потом после каждой успешной загрузки еще раз крутите цикл уже внутри onLoadInit.
Теперь конкретно по полноразмерным.
pic_load.loadClip("pictures/"+this.id+".jpg", full_pic);
if ((full_pic._width>fulp_w) || (full_pic._height>fulp_h)) {
glavNaryshRazm = Math.max(full_pic._width, full_pic._height);
deletil = glavNaryshRazm/300;
full_pic._width = full_pic._width/deletil;
full_pic._height = full_pic._height/deletil;
}
Вы начинаете загрузку и сразу же пытаетесь узнать ее ширину, не дождавшись окончания.
То есть создавать еще один MovieClipLoader? За замечание по поводу цикла в LoadInit спасибо, я не знал об этом
Да, еще один. И еще одного листнера. И уже в его onLoadInit-е масштабировать.
Все ясна спасибо большое. Пойду дальше мучить галерейку ;)
Добавлено через 8 минут
Гм. ну вот я и столкнулся с проблемой.Вот убрал я цикл из LoadInit. Ну а как мне теперь работать со всеми картинками? Мне например их надо располагать по x. Но без цикла это не сделать вроде. Вот пример строчки кода
scroll.box["pic"+(i+1)]._x = pic._x+pic._width+5;
pic._y = 5;
Ну вот я по быстрому набросал... Не совсем удачное решение, но в этом случае будет работать.
P.S. Там еще поработай над масштабированием, а то пока что криво.
У меня не открылся исходник. Нужен формат Flash 8
Добавлено через 1 минуту
Если можете, то объясните как мне обращаться и как с работать с картинками без цикла
Добавлено через 15 часов 12 минут
Вопрос открытый. Как без цикла работать с картинками в LoadInit?
Все. Я разобрался с работой с картинками без цикла. Но не могу разобраться с глюками при регулировки размеров крупных картинок.
Снова поднимаю тему. Вся галерея готова. На компе все работает четко. Но на сервере, когда идет подгрузка больших картинок не отображается прелоадер. Ваще не понимаю почему. На компе в эмуляторе подгрузки все отображается. Может вы пойможете? Кидаю исходник. Может я че-то не то написал. Гляньте плизз:o
Добавлено через 19 часов 54 минуты
Да, и еще картинки на сервере не грузятся ваще. Я ваще не понимаю в чем баг. Я уже день ап стену бьюсь. Помогите кто может!!!!!! (не убится ап стену, а найти ошибку).
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.