jsflでムービークリップの子(特に子ムービークリップ)にアクセスするにはどうすればよいですか?私はすでにflash.documents[0].timelines [0] .layers [0] .frames [0] .elements [0] .instanceのインスタンスレベルにいますが、このドキュメントは見つかりましたが、他にはあまりありません。前もって感謝します。
6899 次
1 に答える
15
JSFL で覚えておくべきことは、ステージ上の要素はライブラリ内のアイテムでもあるということです。そのため、何回ネストされていても問題ありません。それはライブラリ内のクリップのままであり、多くの場合、そこから作業したいと考えています。 .
あなたの場合は次のようになります。
// break up your previous path to illustrate the "timeline" point
var timeline = flash.documents[0].timelines[0];
// grab the element
var element = timeline.layers[0].frames[0].elements[0];
// get its associated library item (same instance, just a Library Item, not a stage Element)
var item = element.libraryItem;
// then grab the library item's "timeline" property
var childTimeline = item.timeline
// and you can now access any "nested" elements on it
trace(childTimeline.layers[0].frames[0].elements)
最初は直感に反するように見えますが、すぐに慣れます。それについて考える最も簡単な方法は、基本的にすべての要素がライブラリに存在するため、「トップレベル」であるということです。
また、 fl.getDocumentDOM().getTimeline() は、現在のドキュメントとタイムラインを取得する通常の方法です。
于 2011-09-23T01:01:48.233 に答える