![]() |
Повторная загрузка флешки
Здравствуйте опять, не успел я справиться с первой проблемой, как появилась ещё одна:
Сделал флеш меню, повесил на каждую страничку, но когда я перехожу из одного раздела в другой флешка грузится каждый раз по новой, для каждого раздела. Буду благодарен, если вы поможете мне справится с этим. П.С. Сайт на хтмл, читал, что надо руки отрывать тем, кто флеш-меню на хтмл вешает, однако по другому не умею. П.П.С. Поиск юзал, но проблему не решил. Спасибо. |
Цитата:
А про старт флэшек, так вроде и должно быть. Вы загружаете страницу и флэшка на ней запускается с начала. |
По идее она не должна грузатся заново, она обычно сохраняется в кеше.
|
Если я например перезагружу страницу с этой флешкой то она загрузится из Кеша, но если я зайду в ДРУГОЙ раздел, где есть эта же флешка она будет грузиться по новой. :(
|
Очень простой вопрос. Вы передаёте через param какие-то данные в флэшку? Например данные о том, в каком разделе находится человек?
|
Нет, не передаю.
|
главное лоадер нормально реализовать
пользуйтесь Flashparam или Shared Object-ом кукисом в конце концов проверьте через них была ли загружена если была то лоадер не будет проигроватся или стартонет с нужного кадра (без анимации) |
Цитата:
|
Цитата:
обещаю... |
Цитата:
|
Я вроде нашёл решение своей проблемы <ссылка на пост> на толком ничего от туда не понял, так как для меня это сложно, ибо новичок. Буду рад если мне помогут разобраться.
|
Цитата:
|
Цитата:
|
Тема всё ещё актуальна... к сожалению... :(
|
надеюсь ссылка на тутор поможет
http://www.permadi.com/tutorial/flashCookie/index.html в вашем примере (с ХТМЛ), надо будет писать клиенту кукис (cookie) хоть с ХТМЛ, яваскриптом или самой флэшкой, хоть чем (но рекомендую, писать флэшкой как она загрузится) и читать флэшкой в начале загрузки (если существует запись в куках, не показывать прелоадер и продолжать с какого-то кадра, или иные действия) З.Ы. сорри, извиняюсь за отсутвие... |
Насколько я понял, в коде страницы мне нужно написать:
Код:
<SCRIPT LANGUAGE="JavaScript">Код:
// make sure the variables are validНо ведь у меня внешний прелоадер, как сделать, что бы грузился не он, а сам ролик? |
Help :(
|
А между тем, здесь написано правильно и максимально просто: http://flasher.ru/forum/showthread.php?p=575191
По-другому помочь здесь можно, только если ты выложишь исходник или хотя бы ссылку на сайт. Что-то мне подсказывает, что проблема "повторная загрузка флэшки" может быть совсем в другом: например, если каждый раздел ссылается на флэшку, лежащую в его папке... :) |
Нет, флешка одна, так как все разделы в одной папке.
Код:
a=a_value&b=b_value&c=c_value...Код:
FlashVars="a=Hello&b=World" |
2 Варабейчик:
О, Боже... Ладно, обьясняю ещё раз... Допустим, вы хотите из HTML-кода передать во флешку какое-то значение. Значение это можно передать во флешку в виде какой-то переменной. Пусть эта переменная называется player. И пусть есть ещё одна переменная, которую мы хотим передать флешке. Пусть эта вторая переменная называется score. То есть, мы хотим, чтобы когда флешка загрузилась, то в коде ActionScript'а мы могли бы иметь переменные score и player с переданными из HTML-кода значениями. Для этого в тэге object добавляем новый параметр: Код:
<param name="FlashVars" value="player=user&score=10">Код:
FlashVars="player=user&score=10"Код:
trace(player);Код:
user |
Глупый вопрос, как это поможет мне в том, что бы флешка не грузилась по новой? :o :umnik2:
|
2 Варабейчик:
Э... А это кто писал? Цитата:
|
Да нет у него ещё никаких переменных, я думаю, он ещё не знает, что чтобы менюшка выглядела по-разному в разных разделах, она должна получить номер этого раздела ;)
Пока что, я думаю, там так: нажал на кнопку - что-то тут изменилось, но рефреш страницы опять сбросил всё на начало :) Пока автор не выложит исходник - продвижения здесь не будет... Кстати, можно ещё шаредобжект использовать для передачи состояния меню....;) |
Да мне не нужно состояние меню, мне надо, что бы юзер каждый раз не ждал загрузки одной и той же флешки в разных разделах. :o
|
если у юзера отключено кеширование, то никакими силами ты этого не добъешся...
А так оно вообще-то по умолчанию кешируется, если флешка пришла из одного и того же источника, то она не записывается 2 раза... только что проверил: создал 2 ХТМЛ файла с одной и той же флешкой, выложил оба на сервер, открыл в браузере. Результат - в кеше только одна флешка, а не 2. |
Цитата:
Кстати, в мозиле флшка грузится при заходе в раздел, и при последующих входах уже не грузится - запускается сразу, а в ИЕ грузится ВООБЩЕ каждый раз по новой. :eek: :( |
может у тебя в тэгах no cache (не кэшировать) написано?
|
Я посмотрел, флешка в кэше тоже одна.
в ИЕ грузится ВООБЩЕ каждый раз по новой Одно из двух... либо одна флешка в кеше, либо каждый раз по-новой. Ну не может такого быть... проверь настройки эксплорера, там может стоять что-то типа "обновлять кеш при каждом заходе на страницу", хотя по дефолту там стоит "автоматически". Еще дурацкое предположение... кеш превысил отведенное ему дисковое пространство... |
Для интереса сделал так, удалил флешку из кеша, зашёл заново, флешка загрузилась, появилась в кеше, через несколько минут зашёл в другой раздел, посмотрел во флешке "Последний доступ", там стоит время, когда я первый раз её загрузил. Получается, что браузер просто не читает её из кеша. Может всё таки дело в прелоадере?
|
Ну так выложи, что там в прелоадере-то написано =) а вдруг он там грузит что-нибудь типа:
Код:
myLoader.loadClip("my_url.swf+"?my_var="+Math.random()*10); |
Код:
var MOVIE_PATH:String = "Head.swf"; |
даж не знаю... по идее все нормально, лучше, конечно пользоваться MovieClipLoader.loadClip(), а не loadMovieNum(), но в данном случае ничего предосудительного вроде не наблюдается...
Попробуй разве что полный путь к загружаемой флешке прописать: Код:
var MOVIE_PATH:String = "www.myDomain.com/Head.swf";Дело в том, что флешка определяет путь к загружаемому файлу относительно страницы на которой находится, т.е. если выложить одну и ту же флешку на страницы типа: www.myDomain.com/page1.html и www.myDomain.com/pages/page1.html то в первом случае относительные линки трансформируются в www.myDomain.com/mySWF.swf, а во втором - в www.myDomain.com/pages/mySWF.swf вполне возможно, что для сервера эти запросы равнозначны, но вот с точки зрения браузера - нет. ЗЫ. Можно еще поэксперементировать с <BASE /> в заголовке ХТМЛя, но мне кажется, что это не самый продуктивный подход... http://www.w3.org/TR/html4/struct/links.html#edef-BASE |
wvxvw
Написал полный путь, появилась проблема - в ИЕ после загрузки прелоадером флешки, он не исчезает, а остаёся на заднем плане (кусок полоски для отображения загрузки), в мозилле же нет. |
но первая проблема решилась?
Чуть по-позже напишу нормальный прелоадер, сейчас уходить надо... |
Так чиво, весь прелоадер переделывать надо? :(
|
вообще... знаешь что, выложи лучше исходник прелоадера, там его переделать - совсем не много работы, но я хоть буду видеть в чем проблема.
|
Вложений: 1
Воть:
|
Вложение 15595
Вот, пробуй, вроде все работает. Т.как я не знаю откуда ты собираешься грузить флешку, то адрес вынес в ХТМЛ (ХТМЛ и ЖаваСкрипт прилагаются, за жаваскрипт спасибо iNils) Ты, ессна можешь это убрать, и задавать имя к файлу прямо в флешке. |
Вроде всё ок, спасибо!
|
наздоровье =)
|
| Часовой пояс GMT +4, время: 00:34. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.