![]() |
Как это сделать?..
Есть пять флэшей. Они несколько раз продублированы на странице с айдишниками типа - "papa1", "papa2", "papa3"; "mama1", "mama2", "mama3";
Есть также на странице клип control. Каждый клип papa или mama должен передать в control "я загружен". Причем желательно бесшумно - через fscommand. Control делает проверку - кол-во типов флэшей умножает на кол-во дублирований. И если результат умножения равен количеству загруженных флэшей папа-мама, то делается какое=то действие..... Типа КОНЕЦ - УРЯЯЯ! Вот такая вот бредятинка. Ничего умного в голову не лезет, вот и прошу хелпа :) Только не надо меня посылать на Астру :) |
Если я правильно понял, все это происходит на html странице
В первом кадре каждого ролика: loadedBytes = _root.getBytesLoaded(); totalBytes = _root.getBytesTotal(); load=loadedBytes/totalBytes; if (load==1){ fscommand("clip1","loaded"); gotoAndPlay(3); } Во втором кадре gotoAndPlay(1); Ну и разумеется в HTML описываешь функцию А сонтрол твой будет получать переменную от браузера, и чего-то там делать, как ты сам сказал. А если имелась ввиду сцена, то причем здесь fscommand(); тогда все здесь просто. онКлипЭвент итд |
Вложений: 1
На таком примерчике простом можно все продробнее показать? Нужно чтобы если все четыре клипа загрузились, то контрол перешел на третий фрейм.
|
Уточни пожалуйста
Сколько типов флешей будет, и сколько дубликатов, а то я чего-то в примере не совсем догоняю. Да, немного придется повозится со скрипингом на странице.
|
А ещё есть замечательная штука - ЛокалКоннекшн называется...
http://www.macromedia.com/support/fl...connection.htm |
Вложений: 1
Привет:) Вот такой набор флэшей на странице (в архиве). Задача в том, чтобы каждый отдельный флэш (images1...5 , address1...5 , details1...5 , CTF1...5 , BZP1...5 , prop_name1...5), когда загрузился до конца - передал в контрол "я загружен". Желательно не просто абстрактно, типа flash_loaded_summary = flash_loaded_summary + 1
а чтобы в контроле был в конце такой набор переменных - images1 = "loaded". prop_name1 = "loaded". address1 = "loaded". details1 = "loaded". CTF1 = "loaded". BZP1 = "loaded". images2 = "loaded". prop_name2 = "loaded". address2 = "loaded". details2 = "loaded". CTF2 = "loaded". BZP2 = "loaded". и так еще три раза. Это нужно для того, чтобы когда пять флэшей с порядковым номером 1 загрузились, контрол сказал флэшу images1 play. тот в свою очередь, когда проиграет до конца сказал флэшу address1 play. И так до BZP1. Когда BZP1 доиграл до конца - он говорит контролу, что он закончил. Контрол проверяет, если все пять флэшей с порядковым номером 2 загружены, значит images2 play и все заново. Это был бы идеальный вариант. Есть в принципе промежуточный вариант - полегче - это каждый флэш когда он загружен добавляет к переменной в контроле flash_loaded_summary единицу. Контрол постоянно делает проверку - если кол-во наборов флэшей (в данном случае 5)*кол-во флэшей в наборе (в данном случае 6) == flash_loaded_summary , то одномоментно говорим всем флэшам play. |
2SPV: использование МХ пока исключено... а жаль...
|
2 SPV
Точно, а я и забыл, что такая штукенция в шестерке появилась, спасибо. 2 RadonDmitro Звини, меня ща работой срочной обложили, но к концу дня постораюсь, чем-нить тебе помочь, да ты и сам не плошай. |
Если получится буду Очень признателен :) В любом случае спасибо :)
|
Через ЯвуСкрипт полезут подводные камни и самое главное - ФСКоманд не во всех браузерах работает.
Так-же придется заводить явовский буфер, потому что возможна такая ситуация: какой-либо флэш загрузился и просит яву отрапортовать этот факт контролу... но к этому времени сам контрол ещё не загружен. Тогда придется запоминать рапорт в буфере, а по загрузке контрола он должен спрашивать ЯвуСкрипт, что там в буфере накопилось. Есть более универсальный способ без недостатков и без ЯваСкрипта - серверный скрипт. Каждый флэш по заргузке оповещает об этом сервер (скрипт), а контрол с некоторым интервалом запрашивает у сервера (скрипта) состояние всех флэшей. Чтобы не мучаться с файлами и сессиями, скрипту можно хранить текущее состояние в куках. |
| Часовой пояс GMT +4, время: 13:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.