AS1/2では、getURLを使うことで、外部ページに行く動作が作れたかと思います。ですが、AS3では書き方が変わりました。
いままで、私のサンプルは外部クラスで持つ形だけだったので、今回はフレーム内記述もあわせてやってみます。
AS33.0の場合、外部ページの飛ぶ場合、URLRequestクラスでまずURL情報を指定して、navigateToURLクラスに投げ込むと動作します。
AS1/2とは、getURLでできてましたが、AS3ではまったく手続きが違うのでご注意ください。
以下、2スクリプトはステージをクリックすると
http://f-site.org/に飛ぶ仕様となっています。
■AS3.0 スクリプト例:フレーム内バージョン
ファイル:GoURL_inFrame.fla
1フレーム目に以下を記述。
// イベントを設定
stage.addEventListener( MouseEvent.CLICK , onClick );
// 画面クリックをするとonClickが動作するイベント
function onClick ( event:MouseEvent ) {
// URLRequestを設定
var url:URLRequest = new URLRequest( "http://f-site.org/" );
// 実際にページに飛ぶ
navigateToURL( url );
}
■AS3.0 スクリプト例:外部ファイルバージョン
ファイル:GoURL.fla、GoURL.as
package {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.net.navigateToURL;
import flash.net.URLRequest;
public class GoURL extends Sprite {
public function GoURL() {
// 画面クリックをするとonClickが動作するイベント
stage.addEventListener( MouseEvent.CLICK , onClick );
}
public function onClick ( event:MouseEvent ) {
// URLRequestを設定
var url:URLRequest = new URLRequest( "http://f-site.org/" );
// 実際にページに飛ぶ
navigateToURL( url );
}
}
}
以上です。
なお、ソースのテストは、ムービープレビューで使われるデバックプレイヤーでご覧ください。
swfファイルをダブルクリックして開くFlash Player 9ですとセキュリティを聞かれる画面がでます。
サンプルも以下に置きます。
_____________________________________________________
参考文献