Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > Action script 2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 30.03.2004, 19:29
Aloneman вне форума Посмотреть профиль Отправить личное сообщение для Aloneman Найти все сообщения от Aloneman
  № 1  
Aloneman

Регистрация: Jul 2003
Адрес: at Work
Сообщений: 46
По умолчанию Как проверить загрузку переменных из разных мест? одновременно..

Попытаюсь подробно описать в чем трабл: у меня 2 переменные, первая грузится из txt:

_root.loadVariables("myValue.txt");

И проверяю ее:

_root.onData = function () {
if (_root.myValue!= undefined) {
_root.gotoAndPlay(2);
}
}

вторая генерится JS в HTML

<script language=JavaScript>
var dateValue=document.location.href;
function date2() {
document.tl.SetVariable("variable", dateValue);
}
date2();
</script>

И во флэшке принимаю ее:

this.watch("variable", function() { this.myValue2 = arguments[2]; })

если первую могу проверить на прогружаемость как показал выше, то со второй трабл. Как мне проверить и первую и вторую и только потом, убедившись, что они есть, перейти во второй кадр. Мозг свой взорвал уже, но так ничего и не нашел. Обидно еще потому, что вторая переменная генерится медленнее.

Старый 30.03.2004, 21:02
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
если вторая приходит позже добавь флаг
this.watch("variable", function() { this.myValue2 = arguments[2];_root.js_come=true; })
а в первой проверяй
_root.onData = function () {
if (_root.myValue!= undefined) && _root.js_come{
_root.gotoAndPlay(2);
}
}

Старый 30.03.2004, 22:06
Aloneman вне форума Посмотреть профиль Отправить личное сообщение для Aloneman Найти все сообщения от Aloneman
  № 3  
Aloneman

Регистрация: Jul 2003
Адрес: at Work
Сообщений: 46
вроде все правильно, но странно - у меня ничего не происходит, я потестил фильм, он принимает все переменные, переводит jscome в true, и тишина, во второй кадр не перескакивает. вот точный кусок кода, как я написал, может я что-то не так делаю? Отсутствие у меня опыта сказывается конечно, не могу понять, хоть тресни...

Код:
var jsCome = false;

this.watch("variable", function() { 
this.tl = arguments[2]; 
_root.jsCome = true; 
} 
)

_root.loadVariables("/img/tl/tl.txt");

_root.onData = function () {
if ( (_root.y_2 != undefined) && (_root.jsCome == true) ) {
_root.gotoAndPlay(2);
}
}

Старый 30.03.2004, 22:25
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
все верно - фигню я тебе присоветовал : onData срабатывает, когда jsCome еще false, поэтому и ничего..
а вот так должно получится

var jsCome = false;
this.watch("variable", function() {
this.tl = arguments[2];
_root.jsCome = true;
}
)
_root.loadVariables("/img/tl/tl.txt");
_root.onEnterFrame=function(){
if ( (_root.y_2 != undefined) && (_root.jsCome == true) ) {
_root.gotoAndPlay(2);
}else delete this.onEnterFrame;
}


Последний раз редактировалось silin; 30.03.2004 в 22:30.
Старый 31.03.2004, 14:03
Aloneman вне форума Посмотреть профиль Отправить личное сообщение для Aloneman Найти все сообщения от Aloneman
  № 5  
Aloneman

Регистрация: Jul 2003
Адрес: at Work
Сообщений: 46
По умолчанию И что поразительно, работает...

но только тогда, когда я этот пример прогоняю отдельно. Но как только вставляю его в свой код, то снова не пашет, так же остается на первом. Не везет мне что-то...

Код:
stop();
var bbb = false;

_root.onEnterFrame = function () {
	if ( (aaa != undefined) && (bbb == true) ) {
	_root.gotoAndStop(2);
} else { 
	delete this.onEnterFrame;
}
}

for (var i=1; i<50; i++) {
	trace(i);
	if (i == 20) { _root.aaa = 1; _root.bbb = true; break; }
}

Старый 31.03.2004, 19:05
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 6  
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
извиняйте плиз, совсем плох- два раза кряду на те же грабли
так конечно же нельзя
if ( (_root.y_2 != undefined) && (_root.jsCome == true) ) {
_root.gotoAndPlay(2);
}else delete this.onEnterFrame;
}// - она в первый же раз и удалиться

а надо
if ( _root.y_2 && _root.jsCome ) {
_root.gotoAndPlay(2);
delete this.onEnterFrame;
}

Старый 31.03.2004, 21:46
Aloneman вне форума Посмотреть профиль Отправить личное сообщение для Aloneman Найти все сообщения от Aloneman
  № 7  
Aloneman

Регистрация: Jul 2003
Адрес: at Work
Сообщений: 46
YES! заработало! спасибо Вам огромное!

Создать новую тему   Часовой пояс GMT +4, время: 09:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.