Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   onLoadInit срабатывает поздно (http://www.flasher.ru/forum/showthread.php?t=125380)

PeSH 22.05.2009 20:03

onLoadInit срабатывает поздно
 
Вообщем, есть загрузчик, который загружает некий клип. Проблема в том, что onLoadInit срабатывает неизвестно когда, то есть клип грузится, уже начал играть, и тут срабатывает onLoadInit. Клип в это время уже как минимум на 3 кадре своего таймлайна. Кто-нибудь сталкивался с такой проблемой? У меня в onLoadInit для этого клипа стоит stop(), но поскольку событие срабатывает поздно, стоп прокатывает только, когда клип уже на 3 или более кадре. Как стопить клип сразу после его загрузки?
Всем заранее спасибо!

in4core 23.05.2009 03:28

код в студию. иначе сейчас вы говорите полный бред

KiL33 23.05.2009 08:48

Цитата:

Проблема в том, что onLoadInit срабатывает неизвестно когда
Событие генерируется после инициализации загруженного клипа, то есть после того, как был выполнен весь программный код в его первом кадре.

PeSH 25.05.2009 13:08

Дело, в том, что код выполняется и в первом, и во втором, и в третьем кадре. И тока потом срабатывает onLoadInit. К сожалению, это не бред, хотя очень бы хотелось. Согласно справке, onLoadInit действительно должен срабатывать, когда загрузился первый кадр и началось его выполнение. На самом же деле (на практике) такого почему то не происходит. Вероятно очередной недочет adobe. Я вышел их положения, сделав след. код:

Код AS1/AS2:

var list:Object = {
onLoadProgress: function (clp:MovieClip) {
if (clp.stop) clp.stop();
}
}

Всем спасибо за внимание!

джонатан 26.05.2009 06:20

Глупости тут какие-то написаны. Причем полнейшие.

PeSH 26.05.2009 14:22

Да, мне больше нечем заняться, вот я и пишу всякие глупости в форуме :) Вы абсолютно правы

vikingcompany 26.05.2009 14:36

Цитата:

Сообщение от PeSH (Сообщение 822786)
Код:

var list:Object = {
onLoadProgress: function (clp:MovieClip) {
if (clp.stop) clp.stop();
}
}


Неужели дебагер на это не ругается?

etc 26.05.2009 14:40

vikingcompany, а что неправильно в коде, кроме отсутствия смысла?

PeSH 26.05.2009 20:59

vikingcompany, код совершенно верный :) И почему дебагер (не компилятор, а именно дебагер) должен ругаться на этот код?
__etc, если вы не видели, что птицы не летают, это еще сие не значит. Смысл есть во всем, и если он вам непонятен, это не значит что его нет вовсе :) Я описал свою конструкцию, зачем она такая корявая понадобилась, описано выше, повторяться не вижу смысла

Добавлено через 43 минуты
А теперь, господа корифеи флэша, вот вам код в студию.
http://www.sendspace.com/file/798ewh
Надеюсь, в моей писанине разобраться труда не составит. Может я что-то не так делаю, если подскажете, буду очень признателен. Но очень прошу, прежде чем плеваться и осуждать, потестируйте в реальных условиях, а не флэшовым ограничением полосы пропускания. В трейс выводится текст, который и описывает, когда и что происходит. Готовый пример можно глянуть тут http://wcmpl.ru/new_site/1/Untitled-1.swf. Желательно, чтобы у вас был небольшой ширины канал.
Для 1.swf исходник не выкладывал, уж больно большой он получился с видео, думаю, вам уж декомпильнуть труда не составит. Если у кого то не получится, могу выложить :) ждемс комментов

Добавлено через 15 часов 44 минуты
вот недостающие классы, которые забыл выложить
http://www.sendspace.com/file/y7hxsq
Ну чего, никто прокомментировать не хочет?

Добавлено через 41 час 31 минуту
Ау, народ, вымерли все чтоли? Или мой код поверг вас в шок и вы до сих пор от него отходите? :)


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

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