Как вы можете определить, проигрывается ли SWF отдельно или загружается в другой SWF? - PullRequest
1 голос
/ 18 марта 2012

У меня есть два SWF.Одно «шоу» какого-то рода и одно «меню», которое действует как загрузчик для «шоу».SWF-файл «show» может запускаться в своем собственном отношении или загружаться через «меню».

Есть ли способ определить, выполняется ли «шоу» автономно или загружено в «меню»?

Одним из решений является использование «меню» Loaderобъект устанавливает переменную в загруженном «show», например myLoader.content.thisIsFromMenu = true;, а затем проверяет в «show», существует ли такая переменная и имеет ли она значение true.НО мне было интересно, есть ли какой-нибудь более общий способ, который бы не требовал от «шоу» знать что-либо о «меню», чтобы определить, загружен ли он в swf или воспроизводится сам по себе?

Ответы [ 3 ]

3 голосов
/ 02 ноября 2012
if (root.parent && root.parent == stage) {
  // Standalone
}
2 голосов
/ 18 марта 2012

В конструкторе загруженного SWF:

if (stage && parent == stage) {/*I'm standalone*/}

Или, может быть, if (parent is Loader) также будет работать (наоборот, логика)

1 голос
/ 18 марта 2012
if (root.name == "root1") //standalone
...