PDA

Просмотр полной версии : movieClipLoader


megasmall
22.01.2006, 21:51
Ребята! скажите мне в чём разница между onLoadComplete и onLoadInit
я нашёл тока одну: в комплите нельзя узнать _width и _height, того что грузиш а в ините можно... это всё чтоли?

Antares
22.01.2006, 22:20
В хелпе написано буквально следующее:

It's important to understand the difference between MovieClipLoader.onLoadComplete and MovieClipLoader.onLoadInit. The onLoadComplete event is called after the SWF, JPEG, GIF, or PNG file loads, but before the application is initialized. At this point, it is impossible to access the loaded movie clip's methods and properties, and therefore you cannot call a function, move to a specific frame, and so on. In most situations, it's better to use the onLoadInit event instead, which is called after the content is loaded and fully initialized.

megasmall
24.01.2006, 00:14
ещё бы по-русски...

Arges
24.01.2006, 01:22
У меня такой вопрос на тему MovieClipLoader, кто знает почему
в 8 flash данный код работает чётко, а в 2004 "нормально" работает только onLoadStart,а "Complete" появляется в начале загрузки мувика сразу за "Start"

mcl = new MovieClipLoader();
listener = new Object();
mcl.addListener(listener);
mcl.loadClip("1.jpg", 1);

listener.onLoadStart = function (mc) {
//trace("Start")
}
listener.onLoadProgress = function (mc,lb,tb) {
//trace("Progress")
}
listener.onLoadComplete = function (mc) {
//trace("Complete")
}

Arges
24.01.2006, 01:24
естественно в коде не //trace("") ,а trace("")

Antares
24.01.2006, 02:46
По-русски есть в переведенном хелпе. Лично я ту статью переводил.

Nox Noctis
24.01.2006, 16:32
в 8 flash данный код работает чётко, а в 2004 "нормально" работает только onLoadStart,а "Complete" появляется в начале загрузки мувика сразу за "Start"потому что ты тестишь в оффлайне.
с локального жесткого диска файл ЛЮБОГО размера погрузится за время одного кадра. то есть как бы нет никакого прогресса: сразу начало и окончание. :)

поэтому в фмх 2004 прогресс не срабатывал вообще ни разу (что, по-моему, есть баг), но это отчасти и логично.

Arges
25.01.2006, 03:08
Да,но существует эмуляция загрузки и при ней всё работает точно так как я описал,какой тогда в ней смысл или же этот баг распостраняется только в случае movieClipLoader ?

MOHCTEP
25.01.2006, 03:13
Да,но существует эмуляция загрузки и при ней всё работает точно так как я описал,какой тогда в ней смысл или же этот баг распостраняется только в случае movieClipLoader ?
Ну тебе ж ответили, что это баг 7. Могу потвердить, поскольку сам нарвался на эти грабли. Тестил интервалом при эмуляции. В 7 он потребовался, а в 8 - нет.

Antares
25.01.2006, 03:47
Это НЕ баг. Так и должно быть. Нокс объяснил, почему.

Nox Noctis
25.01.2006, 14:05
Да,но существует эмуляция загрузки и при ней всё работает точно такэмуляция на то и эмуляция, что делает процесс "похожим" на то, что происходит в инете. но не на 100% (и даже не на 90%). :)

полностью ориентироваться на эмуляцию не стоит. при помощи неё можно проверять только самые простые штуки (мц лоадер не из их числа :) )

megasmall
26.01.2006, 07:01
дану, помоему во Flash 8 эмуляция полностью корректна, т.е. полностью соответствует инету, а вот в 7-ом там да, там вобще нельзя эмулировать прелоадеры на основе MovieClipLoader, тоесть внешние прелоадеры, тока внутренние, которые я ненавижу потомучто они появляются когда уже пол сайта загрузилось.

Antares
26.01.2006, 16:00
Хехехе. Это потому что кто-то не умеет выносить тяжелое из первого кадра.

Что такое хорошо?
26.01.2006, 19:07
Ребята! скажите мне в чём разница между onLoadComplete и onLoadInit
onLoadComplete - это когда загрузка твоего клипа завершена, а onLoadInit - это когда весь скрипт загруженного клипа инициализировался.

Nox Noctis
26.01.2006, 19:14
а onLoadInit - это когда весь скрипт загруженного клипа инициализировался.не весь, а только скрипт первого кадра, и не инициализировался - а _выполнился_.

megasmall
27.01.2006, 04:28
onLoadComplete - это когда загрузка твоего клипа завершена, а onLoadInit - это когда весь скрипт загруженного клипа инициализировался.
А почему тогда из onLoadComplete нельзя узнать _width и _height, а из onLoadInit можно?

Nirth
27.01.2006, 17:39
Это не баг, просто эмулятор флэш 7 не в полной мере подерживает загрузку(в данном случае MCL), просто они не реализовали того, что должно было быть реализованно

megasmall
28.01.2006, 12:21
не а в 8-ом тоже чтоли нереализовали?