![]() |
Как дождаться загрузки подгружаемого фильма
Ситуация.
Есть интерфейс. В него подгружаются фильмы. В зависимости от текущих настроек интерфейса (например, языковых) в подгружаемом фильме происходит управление клипами (например, прозрачностью). Проблема. Подгружаемый фильм начинает воспроизводиться по мере загрузки, и в этом случае обращение к объектам этого фильма невозможно (видимо до полной загрузки). Как сделать так, чтобы фильм не начинал проигрываться до полной его загрузки и чтобы проигрывался уже с измененными параметрами? Из Гурского был почерпнут следующий код для подобных ситуаций: Код:
MovieClip.prototype.onLoad = function() { |
Кстати, забыла сказать. При обращении к объектам подгружаемого фильма в дальнейшем все замечательно работает.
|
как начнет подгружаться, останавливай его
лучше всего прелоадер написать для таких вещей он тебе и процесс распишет как загрузка идет и когда закончится... |
Нет, прелоадер мне совсем не нужен. Собственно вопрос "непроигрывания" фильма до конца загрузки решен (см. функцию выше). Другой вопрос, что непосредственно после этого невозможно обращение к объектам фильма.
Я не понимаю почему и что с этим делать. |
Код:
MovieClip.prototype.onLoad = function() {В аутпуте следующее: 57 Объекты не обнаружены Объекты не обнаружены Объект мувика: _level0.newMov.obj3 Объект мувика: _level0.newMov.obj2 Объект мувика: _level0.newMov.obj Кстати, почему "объекты не обнаружены" два раза (второй появляется при нажатии на вторую кнопку)? |
getDepth это метод а не свойство, надо ()
|
Может так и правильней :) но работает и без скобочек. Это не принципиально вобщем-то для решения проблемы
|
Цитата:
|
Да они одинаковые совершенно... все три. Такое ощущение, что там 4 объекта, а не три.
И потом не важно 0 это или 10000... Главное факт наличия, а не значение :) Ну это тоже вопрос десятый... пока по крайней мере. |
Цитата:
и попробуй заменить MovieClip.prototype на newMov и вообще почему ты против прелоадеров? зато таких проблем не будет, он тебе после загрузки сразу же все сделает как надо |
да кстати в руте еще содержится весрия плеера (это твой 4 обьект) и еще одно про prototype:
If you are using ActionScript 2.0, you don't need to use this property; it reflects the implementation of inheritance in ActionScript 1. |
Цитата:
Во-вторых. Если бы один из мувиков лежал на нулевом уровне, было бы три надписи: "объекты не обнаружены" и еще два обнаруженных. В-третьих. Насчет прелоадера. Что он изменит? У меня уже есть событие, которое наступает при загрузке фильма. Оно же корректно работает? И потом, знать сколько осталось до конца загрузки фильма мне не надо. Но если у тебя есть время и желание, и ты сделаешь пример такого прелоадера, который позволяет решить названную проблему, я буду тебе очень благодарна. |
Код:
oLoad = {}; |
Спасибо. У тебя работает? У меня нет
Я пока просто вставила код - попытаюсь покапаться Кстати, у объекта не может не быть глубины. Если объект есть, значит и глубина у него есть |
да не, я не про то...
напиши в абсолютно пустом проекте Код:
for (var i in _root)trace(_root[i]);потому у тебя и выдавалось "Объекты не обнаружены" кстати выше представленный прелоадер работает тока в инете |
Цитата:
|
WIN 8,0,22,0 - это версия плеера?! прикольно :)
То есть этот объект по умолчанию всегда на нулевом слое? молодцы! Спасибо, буду знать. |
Не, не работает
|
я специально собрал проект что б проверить
у меня работает, может ошибочка закралась у вас где-нибудь? |
Цитата:
Спасибо огромное за помощь. |
| Часовой пояс GMT +4, время: 00:05. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.