Просмотр полной версии : напомните, плз. (проверка загрузки данных)
код первого и единственного фрейма.
for(i=0;i<=3;i++)
{
var Send = new LoadVars();
Send.var = Somevar;
Send.sendAndLoad(someway_to_php_file, Send, "GET");
Send.onLoad = function() {trace(Send.loaded_var)}
}
В зависемости от переменной Somevar (каждый новый цикл, новое значение этой переменной), php присылает переменную loaded_var со значением 0 или 1.
Проблема в том, что переменная loaded_var невсегда определяется. Т.е. например, здесь он мне должен выдать 3 единицы подряд, а выдает на первом цыкле undefined на остальных 2х,как и нужно, 2 единицы.
Я так понимаю, проблема в том, что он неуспевает загрузить, так вот напомните как проверять загрузку данных.
посмотри так: Send.onLoad = function() {trace(this.loaded_var)}
хм..странно. Мне казалось если trace выдает в этом примере мои единицы, то написав вместо trace переменную которая с каждым новым циклом меняется, то ей будут присваиваться мои единицы, а в итоге присвоение идет только последней , динамически созданной переменной.
вобщем чтобы не быть голословным, вот тот же кусок кода с маленьким дополнением.
for(i=0;i<=3;i++)
{
mc.duplicateMovieClip("nm"+i,i);
nm = this["nm"+i];
// т.е. всего получается 3 мувика (nm1,nm2,nm3),
var Send = new LoadVars();
Send.var = Somevar;
Send.sendAndLoad(someway_to_php_file, Send, "GET");
Send.onLoad = function() {
nm.my_var = this.loaded_var
// вот здесь, мне казалось, я присваиваю каждому мувику
//переменную my_var со значением от loaded_var.
//Т.е. я расчитываю, что после того как весь цикл завершится,
//в созданных таким образом мувиках будут переменные
// nm1.my_var, nm2.my_var, nm3.my_var равные , к примеру, 1ам.
// А на деле получается что только nm3.my_var принимает нужное
// значение, все остальные undefined.
}
}
У меня все получается как надо, если я делаю это не одним этапом, а постепенно , в данном примере , в 3 этапа. т.е. создаю мувик. присваиваю переменную, дальше происходит како-либо событие, после чего вновь создаю след. мувик и снова присваиваю переменную и т.д. Но мне нужно все сделать за один целый цикл.
вобщем я так понял, для флэша это слишком жирно.
я решил переписать код и сделал все поэтапно.
for (i=0; i<=3; i++) {
mc.duplicateMovieClip("nm"+i, i);
var Send = new LoadVars();
Send.var = Somevar;
Send.mc = this["nm"+i];//ссылка на соответствующий мувик
Send.sendAndLoad(someway_to_php_file, Send, "GET");
Send.onLoad = function() {
this.mc.my_var = this.loaded_var;//обращение к этому мувику
};
}
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.