![]() |
Загрузка клипов разной длины
Здравствуйте.
Первый раз на этом форуме, очень надеюсь на помощь. Итак, задача. В родительский клип подгружаются несколько баннеров. Количество заранее не известно. После загрузки они крутятся в цикле. Баннеры могут быть как картинками, так и swf-ками. Собственно, проблема: каждый загруженый банер должен показываться весть свой цикл (если он анимирован), +10 секунд. Как определить, что загруженый баннер проигрался до конца? Баннеры могут быть любой сложности, так что просто считать кадры - не прокатит. Сам уже, кажется, все перепробовал. Помогите, пожалуйста!!! PS: решение сгодится любыми средствами. Не только Flash, но и Perl, PHP, JS... Да хоть Basic, лишь бы работало! |
А баннеры твои или нет?
То есть ты имеешь доступ к их редактированию или нет? Если да, то тогда только как теория можно сделать так. Каждый баннер в основной ролик передаёт параметр, что типа он начал проигрываться и параметр в конце ролика, что он закончил проигрываться и останавливается, с этого времени отсчитывается 10 секунд за которые грузится следующий баннер. Чтобы узнать количество баннеров - это другими средствами, не флэшом, также чтобы отличить картинку от ролика, через скрипт передаётся определённый параметр. |
Нет, баннеры не мои, в том и проблема. Узнать количество баннеров и отличить их от картинки - не проблема. Это я сделал. А вот как узнать, что загруженный баннер докрутился - черт его знает. Если бы была простая анимация - можно было бы через totalframes узнать количество кадров, а потом в onEnterFrames проверять. Но если в баннерах Action - это не прокатит. Есть еще какие-то варианты?
|
Только ручками. Сначала просматривать баннер, потом при загрузке передавать параметр указывающий условное количество кадров.
В целом подход не верен. Вы должны разработать требования, и предоставляемые баннеры должны им соответствовать. |
Есть ещё один вариант, но не знаю насколько он подойдёт. Обычно баннеры имеют не менее 2-х кадров. Хотя не факт, но всё равно можно проверять когда баннер снова перейдёт на первый кадр, и между этими переходами установить время для каждого конкретного баннера. То есть это будет время его проигрывания. Затем это всё дело можно в массив переделать. Чтобы этот переход был не так заметен (что баннер начал заново проигрываться, а ты его резко оборвал и загружаешь следующий) сделай затухание по альфе.
|
Цитата:
|
Ну вот я и говорю, что не факт :)
|
Спасибо всем за ответы. Если честно, даже не ожидал, что так сразу отклик будет.
В том и проблема, что баннеры однокадровые зачастую. Что подход неверный - может быть, но это не обсуждается. Клиент всегда прав. А он хочет полную независимость от того, что там человек грузит у себя в аккаунте. Надо, чтобы работало. В принципе, есть вариант. По корявости превосходит все, что я до сих пор делал :). Смысл - дать человеку после загрузки быннера самому указать, сколько он должен быть виден на экране. Но это из рук вон плохо. Хочется, чтобы от юзверя минимум требовалось. Типа, залил и из сердца вон. Кстати, а если упростить немного и предположить, что все баннеры не зацикленые, а проигрываются 1 раз и останавливаются? Но тоже - либо кадрики меняются, либо экшеном что-то делается. Можно ли как-то отследить конец? |
Цитата:
Цитата:
|
В данном случае, клиент - мой шеф на основной работе. Так что много ему не докажешь...
И это, пожалуй, единственное допустимое ограничение. Что ж, видимо, придется остановиться на варианте с ручным указанием времени. Изврат, конечно, но можно пропихнуть как возможность задать для баннера проигрывание нужное количество раз :). Если появятся у кого-нибудь новые мысли на эту тему - буду очень благодарен. Спасибо за помощь. |
| Часовой пояс GMT +4, время: 15:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.