![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
Собственно, вопрос: как можно убрать постоянное появление прелоадера в шапке сайта, который висит в первом кадре рута при перезагрузке странички сайта или переходе на другой раздел сайта (прелоадер у меня плавно исчезает и после исчезновения дает команду руту - gotoAndPlay(2) ).
Отдельный фрейм для флешки не предлагать. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 528
|
Сделайте дополнительную проверку. Если bytesLoaded сразу же равно bytesTotal - то пропускать анимацию и сразу переходить к контенту.
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
в моем случае это не сработало. могу выложить исходный код, если вы думаете, что я что-то упускаю, но у меня или не догружается что-либо или прелоадер всеже виден.
|
|
|||||
|
Действительно может не сработать. Так как ролик на момент проверки может не успевать подгрузиться полностью даже из кэша.
навесь на первую проверку уровень загрузки клипа. Если клип грузится из кэша, то при первой проверке он "почти" загрузился т.е. процентов на 80-99. Если так, то скипуй прелоадер, так как если на первом кадре он спел загрузиться почти весь, то на втором он уже точно будет загружен.
__________________
Бороться и искать, найти и перепрятать. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 528
|
Цитата:
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
ну вот код первого кадра:
import flash.display.*; import flash.geom.*; import mx.transitions.*; import mx.transitions.easing.*; import TextField.StyleSheet; Stage.scaleMode = "noScale"; Stage.showMenu = false; _quality = "BEST"; stop(); var flag:Boolean = false; _root.preloader_mc.onLoad = function() { total = _root.getBytesTotal(); }; _root.preloader_mc.onLoad(); controller_xml = new XML(); controller_xml.ignoreWhite = true; parse = function () { ... }; F_go = function () { parse(); _root.preloader_mc.onEnterFrame = function() { loaded = _root.getBytesLoaded(); percent = int(loaded/total*665); var tween_w = new Tween(preloader_mc.bar_mc, "_width", Regular.easeOut, preloader_mc.bar_mc._width, percent, 1, true); preloader_mc.preload_txt.text = Math.round(loaded/total*100)+"%"; if (loaded == total) { delete _root.preloader_mc.onEnterFrame; var tween_alpha = new Tween(preloader_mc, "_alpha", Regular.easeOut, preloader_mc._alpha, 0, 1, true); tween_alpha.onMotionFinished = function() { _root.gotoAndPlay(3); }; } }; }; controller_xml.onLoad = function(success:Boolean) { if (success) { style_css = new StyleSheet(); style_css.onLoad = function(ok) { if (ok) { F_go(); } }; style_css.load("css/style.css"); } else { null; } }; controller_xml.load("xml/controller.xml"); вроде ваши мысли в коде истолкованы верно, а все равно не работает. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 528
|
По-моему, истолковано неверно.
Я вообще не вижу, в каком случае вы будете переходить ко второму кадру. Что я вижу: на первом кадре стоп, потом загружаются данные, потом прелоадер следит за загрузкой флешки, по её окончании выполняется ваш твин, а потом переход к третьему кадру. Зачем вообще нужен второй кадр - непонятно. |
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
упс. стоп надо снять с первого кадра естественно. но белиберда получается. сейчас буду разбираться.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 22:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|