Просмотр полной версии : Пожалуйста
Кто-нибудь помогите сделать прелоадер для html страницы с несколькими флэшками на ней, очень нужно. Заранее благодранвй ламер
sergwizard
02.03.2004, 05:09
Ты сам-то понял, что спросил?
По-моему, я все написал. Все прелоадеры, которые здесь описаны считают процент загрузки клипа в другой клип - то-есть, делается флэшка-прелоадер, в которую загружается основной клип, и она считает процент его загрузки. Мне нужно посчитать процент загрузки сразу нескольких клипов, находящихся на странице. Не делать же для каждого свой счетчикик? А загружать их всех в один контейнер - нереально. Может, правда,я с прелоадерами не совсем все понимаю, как есть - вполне допускаю, в таком случае пара дельных советов мне не помешает. Если в исходниках или уроках есть пример, схожий с моим - с удовольствием приму в качестве ответа ссылку, только не надо писать типа "да у нас там до...я прелоадеров, че ты, скачать не можеш, пацан?"
я конечно только учусь и склонен ошибатся)))
но как ты предстовляеш прелоадер который независимо от твоих флешек будет показывать общий процент их загрузки?
ты сам ответил на свой вопрос прелоадер ето такая чтука котрая является единым целым твоей флешки и в очериди стоит первым и скрашивает минуты загрузки всего остального)))
поетому сделай для каждой флешы по оригинальному прелоадеру если флешки рядом то пусть прелоадеры будут разными и приетом разыгрывать какую небудь сценку)))
ну напримет флешка слева , бежит бегун и цифры ведут обратный отсчет в той что справа бежит другой спортсмен ну тоже цифры паказыват скалько осталось до финиша)))зная рамер твойх флешек можно манипулировать сценкой в третьей флеше самой весомой когда бегун добежит пусть появится картинка пьедистала и кто какое место занял)))
ну вобщем выкрутится можно)))
вот тебе и организация)))
не проверял но можно попробовать такую штуку замутить через LocalConnection:
в центральную(управляющую) флешку засовываем сумматор, которому остальные через LocalConnection отдают данные по загрузке:
sum_loaded=0;
sum_total=0;
var lc = new LocalConnection();
lc.sum_tot=function(t){
sum_total+=t;
}
lc.sum_load = function(l){
sum_loaded+=l;
if(sum_total==sum_loaded) {
gotoAndPlay(2);
delete lc;
}
else {
some_text="loaded "+sum_loaded+" from "+sum_total;
//действия при загрузке
}
}
lc.connect("loader");
stop();
//////////////////////////////////////////////
в остальных будет что-то типа
stop();
t=this.getBytesTotal();
lc = new LocalConnection();
lc.send("loader", "sum_tot",t );//один раз отошлем total
this.onEnterFrame=function(){
lc.send("loader", "sum_load", this.getBytesLoaded()-l);//посылаем сколько догрузилось на кадре
l=this.getBytesLoaded();
if(l==t){
gotoAndPlay(2);
delete lc;
delete this.onEnterFrame;
}
}
но как все это протестировать на локальной машине не очень понимаю
sergwizard
03.03.2004, 01:18
Silin, ты, наверное, невнимательно прочитал вопрос. Или, в силу своей разумности и, не веря в то, что кто-то может быть неразумным, ты просто по своему понял задачу. Ты решил, что Король хочет сделать один СУММОВОЙ прелоадер для нескольких флэшек и поместить его в одну флэшку. Признаюсь, я сначала тоже так подумал. И тоже решил, что здесь нужен LocalConnection(). Но быстро понял, что в этом общем прелоадере нет никакого здравого смысла. Он (как минимум) только затормозит показ основного мувика. Потом еще раз прочитал вопрос. И вот второе, внимательное чтение и сподвигло меня на довольно резкую реплику в адрес Короля (за что прошу прощения).
Прочитай и ты еще раз этот вопрос.
Кто-нибудь помогите сделать прелоадер для html страницы с несколькими флэшками на ней,
Человек просит сделать прелоадер не для флэш мувиков, а для HTML СТРАНИЦЫ. О, как!
Тут уж не до LocalConnection().
я на кокомто сайте порнухи видел такую только без флеша хрень замут на яве (только что грузил я так и не понял )
http://www.prastitutki.ru/index2.htm
sergwizard
03.03.2004, 02:28
Вот-вот, и я о том же. Классный прелоадер. :D Смотри картинку.
Я дождался только до 183%, надоело. Кто еще хочет такой прелоадер. :D
Во-первых, спасибо большое sergwizard и opex за бесценные сообщения. Друзья, поржать я и сам люблю, но тут, по-моему, не совсем тот случай. Придраться к словам типа "прелоадер для html страницы" конечно можно, но по-моему и пню понятно, что реально требуется прелоадер именно для флэшек, просто они не каждая по отдельности, а сразу несколько на странице - в этом и фокус. Знал бы я, что вы такие педанты, перечитал бы Розенталя перед тем, как войти в форум.
Насчет local connection - идея мне понравилась, может попробую. Вообще, неужели ни у кого не возникало аналогичных проблем? То есть, никто не пытался поместить больше одной (и, видимо, занимающей классически весь экран) флэшки на страницу сайта? Мне-то еще хорошо, у меня флэшки слава Богу весят по минимуму, так что если все так сложно - оптимизирую еще и обойдусь без прелоадера. А вот как быть, если оптимизировать не получается? Кстати, еще вопрос: я связь между своими клипами в html сделал через javaScript, все вроде работает. Теперь думаю: может стоит переделать все по local Connection? Если у кого есть опыт и того, и другого, подскажите, что в итоге будет быстрее и надежней работать. Вопрос о прелоадере снимаю, вижу, никто не может помочь. Надеюсь, мы все все-таки в конце концов поняли друг друга(меня).
понимаеш если размещаеш на одной странице несколько флешек то и делаеш прилоадер в каждой флешке свой.
sergwizard
03.03.2004, 20:19
Вообще, неужели ни у кого не возникало аналогичных проблем?
Давай-ка, разберем эту проблему поподробнее. Все цифры -для примера.
Прелоадеры делают для того, чтобы:
1. чтобы клиент не скучал, глядя на пустое пятно вместо грузящейся флэшки.
2. чтобы хотя бы приблизительно знать, сколько еще ждать.
3. чтобы окончание загрузки служило триггером для запуска самой флэшки. (if(getBytesLoaded>=getBytesTotal){делать то-то и то-то}).
И так, у нас на странице 3 флэшки. Одна большая, основная. Весит она 100 Кб. Две другие, маленькие, по 40 Кб.
Для того, чтобы основная флэшка считала и показывала ОБЩИЙ gBL и gBT, тебе все равно надо будет писать свои прелоадеры для КАЖДОЙ флэшки. Иначе им нечего будет передавать в основную. Кроме написания прелоадеров, тебе нужно будет еще написать код приема-передачи данных между флэшками. Лишняя работа? Да, конечно же!
Идем дальше. Одна из маленьких флэшек загрузилась полностью. Что ей делать? Ждать ОБЩЕЙ команды, или начинать самой? Если начинать самой, то какой смысл общего прелоадера? Если же ждать общей команды, то нахрена ей и клиенту ждать, если можно уже хотя бы что-то видеть?
Дальше. Загрузка флэшек идет не одновременно и неравномерно. Сначала поток получает верхняя на странице флэшка. Дпустим, это основная. Лично она уже загрузилась, и могла бы показать себя. Но она вынуждена ждать загрузки остальных. И не надо забывать о наших линиях. Скорость загрузки гуляет, а может и вообще упасть. Вот и увеличивается (неоправданно и лишне) время ожидания.
То есть, никто не пытался поместить больше одной (и, видимо, занимающей классически весь экран) флэшки на страницу сайта? Мне-то еще хорошо, у меня флэшки слава Богу весят по минимуму, так что если все так сложно - оптимизирую еще и обойдусь без прелоадера.
Пытались. И на опыте убедились, что больше двух флэешек (если они относительно легкие) или одной серьезной, размещать на странице – не рульно. Нагрузка на процессор, тормоза, косоглазие. . .
Если у кого есть опыт и того, и другого, подскажите, что в итоге будет быстрее и надежней работать.
Опыт есть. Быстрее и надежнее работает localConnection().
Простенький пример прилагается.
Надеюсь, я понятно выразил свои мысли.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.