Flash JavaScript API を使用すると、Flash プログラムを実行している Flash オーサリング環境でアクションを実行するためのスクリプトを作成できます。 この機能は、SWF ファイルを再生している Flash Player 環境でアクションを実行するためのスクリプトを作成できる ActionScript 言語とは異なります。 また、Web ブラウザーに表示されるページで使用する JavaScript コマンドとも異なります。
JavaScript API を使用すると、Flash アプリケーションのスクリプトを作成してオーサリング処理を効率化することができます。 例えば、繰り返し作業を自動化するスクリプトの作成またはツールパネルへのカスタムツールの追加を行うことができます。
Flash JavaScript API は、Netscape JavaScript API を基に設計されている Adobe® Dreamweaver® および Adobe® Fireworks™ JavaScript API に似た設計になっています。Flash JavaScript API は Document Object Model(DOM)を基にしており、JavaScript のオブジェクトを使用して Flash ドキュメントにアクセスすることができます。 Flash JavaScript API には、Netscape JavaScript API のすべてのエレメントと Flash DOM が含まれています。 ここでは、これらの追加されたオブジェクトとそのメソッドおよびプロパティについて説明します。 Flash スクリプトでは、ネイティブの JavaScript 言語であればどのエレメントでも使用できますが、Flash ドキュメントのコンテキストで意味のあるエレメントだけが有効です。
JavaScript API には、JavaScript やカスタム C コードと一緒に使用して機能を拡張するためのメソッドもあります。詳しくは、C レベルの拡張性を参照してください。
Flash の JavaScript インタプリターは Mozilla SpiderMonkey エンジン、バージョン 1.6 で、www.mozilla.org/js/spidermonkey/ から入手できます。SpiderMonkey は、Mozilla.org が開発した JavaScript 言語の 2 つのリファレンス実装のうちの 1 つで、Mozilla ブラウザーにはこれと同じエンジンが組み込まれています。
SpiderMonkey は、ECMAScript(ECMA-262)Edition 3 の言語仕様で定義されているコア JavaScript 言語を実装し、この仕様に完全準拠しています。 サポートされていないのは、ECMA-262 仕様に含まれないブラウザー固有のホストオブジェクトだけです。 同様に、多くの JavaScript リファレンスガイドでは、コア JavaScript とクライアントサイド(ブラウザー関連)JavaScript を区別しています。 Flash JavaScript インタープリターにはコア JavaScript だけが適用されます。
JSFL ファイルの作成
Flash JavaScript(JSFL)ファイルを作成し編集するには、Adobe Flash Professional または任意のテキストエディターを使用します。Flash を使用する場合、デフォルトのファイル拡張子は .jsfl になります。 スクリプトを作成するには、ファイル/新規/Flash JavaScript ファイルを選択します。
ヒストリーパネルでコマンドを選択して JSFL ファイルを作成することもできます。次に、ヒストリーパネルの「保存」ボタンをクリックするか、パネルメニューの「名前を付けて保存」コマンドを選択します。コマンド(JSFL)ファイルは Commands フォルダーに保存されます(JSFL ファイルの保存を参照してください)。他のスクリプトファイルと同様に、このファイルを開いて編集することができます。
ヒストリーパネルには、他の役に立つオプションも用意されています。 選択したコマンドをクリップボードにコピーすることや、Flash で作業中に生成された JavaScript コマンドを表示することもできます。
ヒストリーパネルのコマンドをクリップボードにコピーするには:
ヒストリーパネルでコマンドを選択します。
次のいずれかの操作を行います。
「コピー」ボタンをクリックします。
パネルメニューでステップのコピーを選択します。
ヒストリーパネルに JavaScript コマンドを表示するには:
JSFL ファイルの保存
Flash オーサリング環境で JSFL スクリプトを使用できるようにするには、Configuration フォルダー内のいずれかのフォルダーに格納します。 Configuration フォルダーは、デフォルトでは次の場所にあります。
Windows® 7™:
boot drive¥Users¥username¥AppData¥Local¥Adobe¥Flash CS5 または CS5.5¥language¥Configuration¥
Windows® Vista™:
boot drive¥Users¥username¥Local Settings¥Application Data¥Adobe¥Flash CS5 または CS5.5¥language¥Configuration¥
Windows XP:
boot drive¥Documents and Settings¥username¥Local Settings¥Application Data¥Adobe¥Flash CS5 または CS5.5¥language¥Configuration¥
Macintosh OS® X:
Macintosh HD/Users/username/Library/Application Support/Adobe/Flash CS5 または CS5.5/language/Configuration/
Configuration フォルダーの場所を調べるには、次の例に示すように、fl.configDirectory または fl.configURI を使用します。
// store directory to a variable
var configDir = fl.configDirectory;
// display directory in the Output panel
fl.trace(fl.configDirectory);
Configuration フォルダーには、オーサリング環境でアクセスできるスクリプトを格納するフォルダーがあります。それらは、Behaviors(ビヘイビアーのユーザーインターフェイスのサポート)、Commands(コマンドメニューに表示されるスクリプト)、JavaScript(ユーザーインターフェイスコントロールのデータを設定するためにスクリプトアシストで使用されるスクリプト)、Tools(ツールパネルの拡張ツール)、WindowSWF(ウィンドウメニューに表示されるパネル)の各フォルダーです。本マニュアルでは、コマンドおよびツールで使用されるスクリプトについて重点的に説明します。
Commands フォルダーのスクリプトを編集すると、新しいスクリプトは Flash ですぐに使用可能になります。 拡張ツールのスクリプトを編集する場合は、Flash を終了して再起動します。または、fl.reloadTools() コマンドを使用します。ただし、スクリプトを使用して拡張ツールをツールパネルに追加してから、そのスクリプトを編集する場合は、ツールを削除してから再度ツールパネルに追加するか、編集したツールを使用可能にするために Flash を終了して再起動する必要があります。
オーサリング環境で使用するためのコマンドおよびツールファイルを保存する場所は 2 つあります。
XML ファイルなど、JSFL ファイルに属するファイルがある場合は、そのファイルも JSFL ファイルと同じディレクトリに保存します。