Просмотр полной версии : Поменять размер подгружаемого jpg
Как мне поменять ._height и ._width подгружаемых картинок?
Загрузать с помощью MovieClipLoader и менять размер по событию onLoadInit.
function loadXML(loaded) {
if (loaded) {
xmlPics = this.firstChild;
url = [];
about = [];
total = xmlPics.childNodes.length;
for (i=0; i<total; i++) {
url[i] = xmlPics.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPics.childNodes[i].childNodes[1].firstChild.nodeValue;
informer.loadMovie("pic/"+url[i])
var clip:MovieClip = createEmptyMovieClip("container"+[i], getNextHighestDepth());
var informer:MovieClip = clip.createEmptyMovieClip("informer", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
clip._x = i*120;
mcLoader.addListener(mclListener);
mcLoader.loadClip("pic/"+url[i], informer);
mclListener.onLoadInit = function() {
informer._width = 100;
informer._height = 100;
};
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("pic.xml");
что не так?
Нету: var mclListener:Object = new Object();
Зачем это тогда informer.loadMovie("pic/"+url[i])?
MovieClipLoader'а достаточно одного.
Я бы избавился от цикла.
И как бы вы сделали? можно поинтересоваться?)
UPDATE
function loadXML(loaded) {
if (loaded) {
xmlPics = this.firstChild;
url = [];
about = [];
total = xmlPics.childNodes.length;
for (i=0; i<total; i++) {
url[i] = xmlPics.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPics.childNodes[i].childNodes[1].firstChild.nodeValue;
var clip:MovieClip = createEmptyMovieClip("container"+[i], getNextHighestDepth());
var informer:MovieClip = clip.createEmptyMovieClip("informer", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
clip._x = i*120;
var mclListener:Object = new Object();
mcLoader.addListener(mclListener);
mcLoader.loadClip("pic/"+url[i], informer);
mclListener.onLoadInit = function() {
informer._width = 200;
informer._height = 100;
};
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("pic.xml"); все равно не работает =(
http://flasher.ru/forum/showthread.php?t=113921&highlight=%EF%EE%F1%EB%E5%E4%EE%E2%E0%F2%E5%EB%FC%ED%EE
а почему мой код не работает? не подскажешь
А что выдает подставленный в разных местах trace()?
function loadXML() {
xmlPics = this.firstChild;
url = [];
about = [];
total = xmlPics.childNodes.length;
for (i=0; i<total; i++) {
url[i] = xmlPics.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPics.childNodes[i].childNodes[1].firstChild.nodeValue;
var clip:MovieClip = createEmptyMovieClip("container"+[i], getNextHighestDepth());
var informer:MovieClip = clip.createEmptyMovieClip("informer", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
clip._x = i*120;
trace("good"+[i])
var mclListener:Object = new Object();
mcLoader.addListener(mclListener);
mcLoader.loadClip("pic/"+url[i], informer);
mclListener.onLoadInit = function() {
trace("not good"+[i])
informer._width = 100;
informer._height = 100;
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("pic.xml");
в аутпут:
good0
good1
good2
good3
not good4
not good4
not good4
not good4
...
почему в OnLoadInit все i = 4?
Kamchatka
28.08.2008, 18:33
Цикл уже закончился, а загрузка ещё идёт. По окончании оной i естественно будет 4
:umnik2::wacko::eek:
и как быть?
Kamchatka
28.08.2008, 18:49
я не знаю, но можно переехать в другой город.
Чтобы каждый onLoadInit выдавал свой идентификатор.
каким образом? вы можете ткнуть на строчки в коде где нужны изменения, ну а если вы сами поправите код был бы очень признателен... ибо мозг сегодня туго соображает, вы уж извените
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.