|
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
как работает флеш в браузере?
Дело вот в чем - swf + html + js.
При заходе на страницу грузится флеш - контейнер, в который грузится основная флеш, которая передает сообщение о своей инициализации в яву. Ява считывает адресную строку ( все что после # ) и передает во флеш. Во флеше вызывается событие, в месте с которым передается эта строка. Поставил вывод в консоль на каждом этапе. По трейсам все хорошо, но на деле изменений во флеше не происходит. После пол дня, мне в голову приходит только одно - может ли быть это из - за того, что в контейнере не обновилась основная флеш? То есть она обновилась и послала сообщение в консоль, но флеш-контейнер каким то образом не заметил это?) |
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Добавил ещё проверку на строгое равенство и вывод текста на экран...
private function changeHandler( e : SWFAddressEvent ):void { Console.console( e.path ); var t : TextField = new TextField(); t.text = e.path as String; addChild( t ); if ( e.path === 'blue/') { Console.console( 'job' ); } switch ( e.path ) { case '/': this.graphics.clear(); this.graphics.beginFill( 0xDAF00F ); this.graphics.drawRect( 0 , 0 , stage.stageWidth , stage.stageHeight ); this.graphics.endFill(); break; case 'orange/': this.graphics.clear(); this.graphics.beginFill( 0xFFAE5E ); this.graphics.drawRect( 0 , 0 , stage.stageWidth , stage.stageHeight ); this.graphics.endFill(); break; case 'blue/': this.graphics.clear(); this.graphics.beginFill( 0x9797CC ); this.graphics.drawRect( 0 , 0 , stage.stageWidth , stage.stageHeight ); this.graphics.endFill(); break; } } то есть и текст на экран выводит и показывает ссылку, и строгое иф показывает, что интерпретация правильная. Но цвет не меняет...Вот что думать? |
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Цитата:
Цитата:
Цитата:
Если просто зайти и нажимать кнопки, то все нормально. Если зайти, перейти в другой раздел, скопировать ссылку, затем опять перейти в другой раздел и вставить скопированную ссылку - то тоже все хорошо. Но если зайти с самого начала по этой ссылке, то результат выполнения кода виден, как по трейсам из консоли, так и на самом экране ( отображение текстфилда ) но цвет при этом не меняется. Если вывод в консоль поставить в самом switch, то показывает, что код даже там выполняется... Добавлено через 5 минут Справился! С самого начала я класс закрашивал а при изменении цвета вызывал clear(), а так как при входе по ссылке с якорем класс не успевал закрашиваться, то и клер видимо тоже не работал) Последний раз редактировалось iNils; 06.07.2013 в 20:25. |
Часовой пояс GMT +4, время: 22:19. |
|
« Предыдущая тема | Следующая тема » |
|
|