#1の方の書かれていらっしゃる方法が一般的な方法です。
全く異論はありません。
あえて#1の方の回答のを補足するとすれば,
リンクバナーの場合他サイトにジャンプするのが普通で,
他サイトにジャンプする場合は,
ターゲットウィンドウが普通は _blank(新窓)ですから,
ターゲットウィンドウ を _brank にしておく方が良いかもしれないということです。
透明ボタンに書くスクリプト例↓(Googleへジャンプ)。
------------------------------------------
on (release) {
getURL("http://www.google.co.jp/", "_blank");
}
------------------------------------------
※補足(余談)
最近はリンク先を新窓で開くことは W3C などで推奨されていません。
また,XHTML 1.1 や XHTML Basic においても採用されていません。
しかし,2007年2月16日に公開されたXHTML 1.1の第二版(案)では
target属性が利用できるように定義が改められたらしいです(単なる案)。
/////////////////////////////////////////////////////////////
なお,
このご質問を機に,他の方法も模索してみました。
余計なお世話だとは思いましたが,
勝手にいくつかの別法を回答させていただきます。
次のいくつかの例は,
全てムービークリップやボタンなどを手作業で作る必要はありません。
スクリプトをコピペするだけでバナー(Flash)全体にリンクをかけることができる方法例です。
だだし,リンク先の URL のみは変えてください。
また,
全ては _root(メインムービーのタイムライン) の フレーム1 に書く(コピペする)スクリプトです。
また,
全ては Flash MX 以上(MX,MX2004,8,…) で使用可能なスクリプトです。
ちなみに,全てActionScript1.0形式に統一しています。
◎ onMouseUpハンドラ を _root に設定した例
--------------------------------------------
_root.onMouseUp = function() {
getURL("http://www.google.co.jp/", "_blank");
};
--------------------------------------------
※ただし上記スクリプトでは,カーソルが
ハンドカーソル(指差しカーソル)に変わりません。
◎ マウスクラスのメソッドを使用した例
--------------------------------------------
// リスナー用インスタンスを作成
var myMouse = new Object();
// マウスクリック時の動作定義
myMouse.onMouseUp = function() {
// 任意のURLを別ウィンドウで開く
getURL("http://www.google.co.jp/", "_blank");
};
// インスタンスをマウスクラスのリスナーに登録
Mouse.addListener(myMouse);
--------------------------------------------
※ただし上記スクリプトも,カーソルが
ハンドカーソル(指差しカーソル)に変わりません。
◎ ムービークリップをスクリプトで作成して利用する例
--------------------------------------------
// 空のムービークリップを 深度1 に作成
_root.createEmptyMovieClip("myMC", 1);
// 空のムービークリップ内に透明な四角を描画
with (_root.myMC) {
beginFill(0x0000FF, 0);
lineStyle(0, 0xFFFFFF, 0);
moveTo(0, 0);
lineTo(Stage.width, 0);
lineTo(Stage.width, Stage.height);
lineTo(0, Stage.height);
endFill();
}
// 透明な四角のムービークリップをクリックしたときの動作
_root.myMC.onRelease = function() {
// 任意のURLを別ウィンドウで開く
getURL("http://www.google.co.jp/", "_blank");
};
--------------------------------------------
◎ テキストフィールドをスクリプトで作成して利用する例
--------------------------------------------
// テキストフォーマットクラスのインスタンスを作成
var myFormat = new TextFormat();
// リンク先の設定
myFormat.url = "http://www.google.co.jp/";
// ターゲットウィンドウの設定
myFormat.target = "_blank";
// ステージの大きさのテキストフィールドを 深度1 に作成
_root.createTextField("myText", 1, 0, 0, Stage.width, Stage.height);
// テキストをHTMLとしてレンダリング
myText.html = true;
// 501 文字ばかり半角空白文字を入れておく
for (i=0; i<=500; i++) {
myText.text += " ";
}
// テキストフィールドにテキストフォーマットを適用
myText.setTextFormat(myFormat);
--------------------------------------------
以上は,同様なことができる可能性を考えただけのもので,
普通はバナーのリンクとしては使わない,実験的で奇妙な方法も含まれています。
何か他のときにでも役に立つことがあるかもしれないという,単なるメモ書きのようなものだと思ってください。
/////////////////////////////////////////////////////////////
~ さらに追加メモ書き(未検証の空想) ~
「Flash Professional 9 ActionScript 3.0 Previewについて」
http://www.adobe.com/jp/devnet/flash/articles/flash9_as3_preview_print.html
上記ページによると,
Flash 9 (ActionScript3.0)からは,
MovieClip クラス に buttonMode プロパティというものが出没するらしく,
ムービークリップ.buttonMod = true;
などと書くと,ムービークリップの上にカーソルを置くだけで,
カーソルがハンドカーソル(指差しカーソル)に変わるようなことが書いてありますがよくわかりません。
もし,これが実現すると,
ひょっとしたらムービークリップの一員である _root に対して,
_root.buttonMod = true;
このようなスクリプトを書くことによって,上記の,
◎ onMouseUpハンドラ を _root に設定した例
◎ マウスクラスのメソッドを使用した例
でも,カーソルをハンドカーソル(指差しカーソル)に変えることができるようになるかもしれません。
この件に関しましては未検証な単なる私の空想です。
お礼
ありがとうございます。 なんとか、大丈夫そうです。 あまりにも初心者で。。。 (>_<)