![]() |
Маска и глубина вложения клипа
В управляющем мувике динамически создаю клип, в который подгружаю мувик с контентом.
При попытке накрыть этот клип маской - ничего не выходит: Код:
createEmptyMovieClip("content", 0);Код:
createEmptyMovieClip("content", 0);И нельзя ли обойтись без создания клипа в клипе? |
Маску надо назначать после полной загрузки подгружаемого клипа.
|
Перенёс команду setMask на последний кадр управляющего мувика,
дав, таким образом, подгружаемому мувику полностью загрузиться. Действительно, маска наложилась. Однако уже при следующей загрузке (контент-то периодически меняется!) маска снялась :-( Приходится мудрить, куда дополнительно вписывать setMask - удовольствия мало. Удивительно, что при создании "клипа в клипе" ничего подобного не происходит - маска надёжно накрывает верхний клип и не снимается. Понять, почему так происходит, здравому человеку не дано ... |
Лучше,если контент не стабилен,как раз такую матрешку делать,надежнее.
|
Ну он не то чтобы "нестабилен", просто обновляется периодически :-)
Отлично сказано - "матрёшка"! А я пытался слово подобрать! И знаешь, я тоже пришёл к вывод такому выводу ... Но только мне, всё-таки, хотелось бы понять: ну почему, ПОЧЕМУ так происходит? |
Цитата:
По этой причине маска, повешенная на внешний для загружаемого мувик-контейнер, продолжает действовать - ведь контейнер сам не изменился, только его содержимое. Вот еще пример. Вы грузите свф-файл в некий мувик mc. Как Вы будете к нему адресоваться? Например, чтобы произвести в этом загруженном свф переход на третий кадр, Вы напишите mc.gotoAndStop(3); потому что mc и есть теперь этот свф. Так понятно? И то, что Вы вешали некогда маску на mc - отменится, потому что ТОГО mc уже нет, есть совершенно новый mc, НЕ СОДЕРЖАЩИЙ в себе свф-файл, а им и ЯВЛЯЮЩИЙСЯ. |
Цитата:
Цитата:
Цитата:
Мне ясно одно: всё это - просто особенность программы. Бывает встречюсь с такой особенностью - так аж злость берёт: уж больно баг напоминает! А потом, подумав, понимаю: если звёзды зажигаются - значит это кому-нибудь мужно ;-) |
Очень просто понять, зачем так, "кому это нужно", если вспомнить, что в подгружаемом мувике тоже может содержаться код, в том числе управляющий роисходящим в отцовском клипе и даже в руте основной флэшки. И вот представьте себе ситуацию - сайт, страницы подгружаются отдельно как файлы свф в некий мувик page_mc. Страница загрузилась и сказала -
Код:
this.onEnterFrame = function () { |
Цитата:
Цитата:
Цитата:
А вот если надо? Всё равно придётся писать код :-) |
Да. Только в этом случае Вы знаете, какой код писать, и пишете о том, чего хотите от этого мувика, а не всё то, чего Вы от него не хотите :). Нередко Вы и знать не знаете, что другой мувик мог наделать. Во всяком случае, в проекте сложнее трех заранее известных страниц)))
Да что тут спорить, просто всегда когда сталкиваешься с необходимостью сделать лишнее, как тебе кажется, движение начинаешь ругать разрабов. А когда этот же принцип в другом твоем проекте отлично работает, этого просто не замечаешь. |
| Часовой пояс GMT +4, время: 01:24. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.