|
|
|||||
Регистрация: May 2012
Сообщений: 12
|
Переходы по кадрам и loadMovie
Добрый день, у меня следующая проблема:
Есть главный файл - main.swf в нем есть 4, так скажем экрана, или кадра с метками (titul, work, modul, demo) Мы переходим в этом файле в modul, и там нажимаем на кнопку, где вызывается открытие work и туда грузится второй файл -Россия.swf, следующим кодом: Код ActionScript 3 on(release){ _root.gotoAndStop("work"); _root.emty_mc.unloadMovie(); _root.emty_mc._x = 85; _root.emty_mc._y = 100; _root.emty_mc.loadMovie("content/Россия.swf"); } Теперь в файле Россия.swf мы имеем кнопку, со следующим кодом: Код ActionScript 3 on (release) { _root.gotoAndStop("demo"); _root.emty_mc_demo.unloadMovie(); _root.emty_mc_demo._x = 127; _root.emty_mc_demo._y = 97; _root.emty_mc_demo._width = 900; _root.emty_mc_demo._height = 500; _root.emty_mc_demo.loadMovie("content/scrolling_movie_clip.swf"); _root.emty_mc_demo._lockroot = true; } А теперь, что я выявил, если на кнопку в нашей Россия.swf повесить вместо верхнего кода, вот этот: Код ActionScript 3 on (release) { _root.gotoAndStop("work"); _root.emty_mc.unloadMovie(); _root.emty_mc._x = 127; _root.emty_mc._y = 97; _root.emty_mc._width = 900; _root.emty_mc._height = 500; _root.emty_mc.loadMovie("content/scrolling_movie_clip.swf"); _root.emty_mc._lockroot = true; } В чем может быть проблема? Как её решить? Так как, я являюсь любителем, и что-либо мог не верно обозвать, выкладываю скрины: |
|
|||||
Регистрация: May 2012
Сообщений: 12
|
У меня не получается загрузить 2внешний ролик в главный из 1внешнего ролика, загруженного в главный. При том что, если грузить 2внешний ролик в тоже место где загружен 1внешний ролик - все работает.
Выкладываю исходник: Исходник.rar Здесь надо нажать на большую надпись "Всемирная история" -> "Россия" -> справа будет кнопка "Анимация" После того как нажмем, увидим что не так... Затем надо нажать назад - треугольник слева, попадем опять на титульную, там выбрать "Аннотацию" - увидим как должно быть... Последний раз редактировалось ArtDenis; 25.11.2013 в 19:43. |
|
|||||
Регистрация: May 2012
Сообщений: 12
|
Люди, никто не может помочь?
Очень нужно решить эту проблему... |
|
|||||
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
|
Флэша под рукой нет. Но помочь могу.
В основной флэшке пропишите метод для загрузки роликов в глобальной области видимости: И из загруженной, вызывайте: Это прям на скорую руку, если. В общем, поменяйте немного устройство. Я так понимаю, что вы из загружаемого ролика пытаетесь управлять основным, перекидывать его на нужный кадр, загружать в клип основного ролика что-то. А поменять следовало бы на то, что вы не контролируете основной (родительский ролик), а, скорее, просите его, мол, "давай теперь покажем то-то". Для этого я и предлагаю вам написать метод в глобальной области видимости. Он будет доступен изо всех уровней, в том числе и из загружаемых роликов. Передаете, к примеру, в этот метод "work", внутри метода определяется, на какой кадр основной временной шкалы основного ролика нужно перейти, что загрузить. Таким образом, у вас будет централизована загрузка. Вам не нужно будет править все подгружаемые ролики в случае, если поменяются пути. Вы, кстати, не преподавателем работаете?
__________________
hauts.ru Последний раз редактировалось Hauts; 26.11.2013 в 10:09. |
|
|||||
Регистрация: May 2012
Сообщений: 12
|
Hauts, огромное Вам спасибо) Направили в нужное русло, причем понятным языком)
Функции должны знать все) Я не работаю преподавателем, я студент, недавно устроился на работу, пишем такие учебники, как на скрине, для школьников) Может кому-нибудь пригодится расписанное решение: 1. На основном (main) ролике в первом слое "actions" создал две функции, они ничего не возвращают: _global.loadNewMovieWork = function(src){ _root.gotoAndStop("work"); _root.emty_mc.unloadMovie(); _root.emty_mc._x = 85; _root.emty_mc._y = 100; _root.emty_mc.loadMovie(src); _root.emty_mc._lockroot = true; } _global.loadNewMovieDemo = function(src){ _root.gotoAndStop("demo"); _root.emty_mc_demo.unloadMovie(); _root.emty_mc_demo._x = 127; _root.emty_mc_demo._y = 97; _root.emty_mc_demo._width = 900; _root.emty_mc_demo._height = 500; _root.emty_mc_demo.loadMovie(src); _root.emty_mc_demo._lockroot = true; } А там где в "demo": Еще раз, огромное спасибо за помощь)))) |
|
|||||
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
|
Ну.. это не совсем то, но если работает, то и ок. Тут уж не до правильности, как я понимаю.
Добавлено через 51 минуту Цитата:
__________________
hauts.ru |
|
|||||
_global - это как глас вопиющего в пустыне.
Когда ничего не помогает, и непонятно как быть? Код поработает немножко и перестанет. Все не так сделано. Рекомендую призадуматься сразу, а не когда уже будет написано неск тысяч строк кода.... |
Часовой пояс GMT +4, время: 07:23. |
|
« Предыдущая тема | Следующая тема » |
Теги |
flash книга , loadmovie , кадры , метки |
|
|