Помогите прикрутить прелоадер

Статус
В этой теме нельзя размещать новые ответы.

ADvcoaTE

Создатель
Регистрация
30 Июл 2008
Сообщения
44
Реакции
1
Имется сайт Для просмотра ссылки Войди или Зарегистрируйся имеется html который грузит флеш .swf и есть сам .swf файл....в это всем мало ро3бераюсь,поэтому помогите пл3! подскажите как можна сделать прелоадер к моему сайту?????тобишь что бы небыло тупого черного екрана и он гру3ился фик знает скок,а была полоска или что то типа того,которая показывала проценты загрузки страници.
 
1. Открываем FLASH
2. Сохраняем новый файл с именем "preloader.fla"
3. Нарисуем прямоугльник, который будет служить нам фоном для текстового поля.
4. Создадим текстовое поле. (для этого выберем в панели инструментов инструмент "text tool", нарисуем им прямоугольник некоторой длины, чтобы в него приблизительно поместился нужный текст шириной в 4-6 символов. После сделаем на поле правый клик мыши и в выпадающем меню выберем panels>text options.
5. Окошке "Text Options" мы заменим в выпадающем меню "static text" на "dynamic text" и в поле "Variable" впишем название - text
пояснения: мы создали динамическое текстовое поле, которому теперь можно задавать свойства для отображения некоторых
переменных и присвоили ему имя-переменную (text) для обращения к этому полю по его имени.
6. Далее выделим все объекты в сцене (CNTR+A) и сделаем их одним символом (F8>Movie CLip, просто Мувик) 7. На полученном Movie Clip-e сделаем правый клик мыши и выберем "Actions"
8. Вписываем код:
примечание: для того, чтобы вводить вручную код, необходи режим эксперта (expert mode) для этого надо щелкнуть мышкой в окно и нажать CNTRL+E.
сам код можно скопировать отсюда:
//------------------------------------- onClipEvent (load) { tot = _root.getBytesTotal(); } onClipEvent (enterFrame) { loaded = _root.getBytesLoaded(); percent = loaded/tot0; text=Math.floor(percent); text=text+"%" if(loaded >= tot){_root.gotoAndStop(2)} } //-------------------------------------
пояснения к коду:
весь код внутри клипа заключается в фигурные скобки { - открывающая, } - закрывающая
------------------------
onClipEvent (load) - событие(event) клипа которое срабатывает в момент его полного появления в сцене tot - объявляем новую переменную
------------------------
_root - означает, что обращение к остальным действиям в строке идет через основную сцену (_root)
------------------------
getBytesTotal() - функция, которая выдаст нам общее количество байтов, где? ...а там где напишем ... если мы пишем _root.getBytesTotal(), значит мы получим общее количество байтов всего _root-а, то есть полный размер нашего ролика.
------------------------
onClipEvent (enterFrame) - событие(event) клипа которое обрабатывается каждый раз когда проигрывается новый кадр (связано с ФПС, по-умолчанию=12 раз в секунду, изменить можно, нажав CNTRL+M)
------------------------
loaded - создаем переменную, которая будет считать загруженные байты и присваиваем ей значение... _root.getBytesLoaded() - функция, выдаст нам количество уже загруженных байтов
------------------------
percent = - сделаем еще одну переменную, которая будет отвечать за проценты
------------------------
loaded/tot0; - тут мы просто высчитаем процент уже загруженного от общего количества (школьная формула).
------------------------
text=Math.floor(percent);
text - переменная-имя текстового поля, которое уже лежит внутри нашего мувика.
Math.floor(percent) - функция, округляет, заключенное в скобки (percent) значение до ближайшего целого (например: Math.floor(2.5) = 2)
------------------------
text=text+"%" - добавляем к переменной text еще один символ "%" в результате получим круглое число "percent" + "%"
------------------------
и завершит наш код условие
if(loaded >= tot){_root.gotoAndStop(2)}
[ if ] - если
[ loaded ]- уже загруженные байты
[ >= ] - больше-или-равны
[ tot ] - общему количеству байтов
[ gotoAndStop(2) ] - то переходим ко второму кадру
[ _root.gotoAndStop(2) ] - то переходим ко второму кадру в основной сцене.
------------------------
9. Ну, а теперь мы воткнем этот самый 2 кадр в основную сцену (выделим в линейке кадров 2 кадр и нажмем F7)
10. Поместим в него какую-нибудь фотографию, к примеру, для увеличения веса всего ролика.
11. Протестируем прелоадер.
Нажимаем CNTRL+ENTER один раз Нажимаем CNTRL+ENTER второй раз
процесс пошел, ждем...
и теперь, как только прелоадер добежит до 100%, он перепрыгнет на 2 кадр сцены, где нас уже ждет прекрасная муза :).
в добавок:
Нажимаем CNTRL+B Теперь видим Bandwidth - профиль в котором видно покадрово, сколько всего весит каждый кадр сцены. А также видны бегущие проценты загрузки.
В меню debug>customize выставим подходящую нам скорость загрузки для теста. И полюбуемся немного в тишине.
------------------------
Полученный нами в результате всего, мувик можно просто копировать в другие документы и он должен также исправно работать.
------------------------
Небольшая поправка к коду: для корректной работы прелоадера необходимо все же писать не loaded == tot а loaded >= tot (см. код)
------------------------
и еще одно - не забывайте в первый кадр сцены ставить this.stop() !

Пробуй.....

Вот неплохой готовый прелоадер:
 
yhoo=)) мозг кипит...это всё через flashmx делать нада?
 
Лучше всего подгрузить через jquery блок с плеером (или плеерами) и будет счастье... и тебе и пользователям...
 
у меня просто нету не флеш мк не адоб флеш...там 5 мин дела,а с инетом моим его качать дня 3,вот и прошу что бы помогли(
 
Советчики конечно хорошие :)
Только зачем таким гемороем страдать ? отдельным файлом прелоадер сделать, не вариант? :D

Или со стороны оптимизации это плохо ?:D
 
Советчики конечно хорошие :)
Только зачем таким гемороем страдать ? отдельным файлом прелоадер сделать, не вариант? :D
Или со стороны оптимизации это плохо ?:D
Объясни пожалуйста как сделать это, вот есть 1(прелоадер.swf). и 2 (основная флешка ) как сделать что бы пока грузилась основная первая мозолила глаза
 
Объясни пожалуйста как сделать это, вот есть 1(прелоадер.swf). и 2 (основная флешка ) как сделать что бы пока грузилась основная первая мозолила глаза
А если прелоадер просто подгрузит 2-ю флешку?
 
Объясни пожалуйста как сделать это, вот есть 1(прелоадер.swf). и 2 (основная флешка ) как сделать что бы пока грузилась основная первая мозолила глаза

Ты сам читал что спросил? у тебя вопрос с ответом получается :))

в preloader.swf указуешь что бы он грузил main.swf(или как у тебя там называется основная флешка)
И будет тебе счастье :);)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху