2009 Oct 29

自分用のメモですー。興味ない方はスルーで(´ー`)

ActionScript 1〜2で、外部リンク指定として使っていた、cは、ActionScript 3 ででは使えないので、ActionScript 3 での構文を掲載しておきます。

FLAファイルの1フレーム目に以下を記述。

   // イベントを設定
  stage.addEventListener( MouseEvent.CLICK , onClick );
  // 画面クリックをするとonClickが動作するイベント
  function onClick ( event:MouseEvent ) {
  // URLRequestを設定
 var url:URLRequest = new URLRequest( "http://xxxxxx.com/" );
 // 実際にページに飛ぶ
 navigateToURL( url );
  }

一応これで『getURL』の用に、SWFファイルをクリックすると、飛び先(http://xxxxxx.com/)にジャンプします(*'-')

で、ここからが大事!

この「navigateToURL」の指定は強制的に「新規ブラウザを開く(_blank)」指定になってますので、現在の画面上に表示を行なうには以下の方法をとって下さい。

   // イベントを設定
  stage.addEventListener( MouseEvent.CLICK , onClick );
  // 画面クリックをするとonClickが動作するイベント
  function onClick ( event:MouseEvent ) {
  // URLRequestを設定
 var url:URLRequest = new URLRequest( "http://xxxxxx.com/" );
 // 実際にページに飛ぶ
 navigateToURL( url,"_self" );
  }

赤字の部分を追加。navigateToURL();内に、「_self」指定を加えるだけでOKです。

で、

この「_self」指定した途端...
ローカル上で、SWFファイルをクリックしてもなにもならんぞーーヽ(;´Д`)ノ

って現象が起きるかも知れません...。猫は起きました(笑)

この原因は、「Flash Player」の方あって、

これは、Flash Player 9,0,115,0 以降で、
SWFファイルが、リンク指定したリンク先のhtmlと異なるドメインにある場合、
ターゲットとして「_self」「_parent」「_top」のいずれかを指定すると、
SWFファイルからのリンクが機能しないようになっています。
(※もちろんローカル上も含みます)

で、この対処方法は、

パブリッシュしたときに、掃き出されたHTMLファイルを開いて、
ソースコード上にある「AllowScriptAccess」の指定箇所を
『always』に変更して、保存してください。

これでローカル上からでも確認できると思います('◇')ゞ

SWFファイル内に入れ込むスパムプログラム対策なんでしょうけどね〜
知らない人は知らないので、この仕様はきついなーと...

今回はこんな感じです。

ActionScript 1〜2と、3は完全に別物なので、折角覚えたのにまた覚え直しには躊躇するんですけどね〜。
CS4を導入する取引先が増えてきたので、否応なしでも、「ActionScript 3 」を覚え直さないとダメだろなー...と、猫はいってみた(´Д`;)ヾ(とある禁書風w)

◎参考サイト様。
F-site | [AS3] getURLのように外部ページに行くには

TrackBack

このエントリーのトラックバックURL; http://mtw.cocotte.jp/cgi-bin/mt4/mt-tb.cgi/473
このエントリーのリンクURL: http://mtw.cocotte.jp/blog/diary/html/2009/10/29-2011.php

Comment

■コメント

こんにちは、はじめましてー!

ご質問の箇所ですが、
FLASHのパブリッシュ設定で形式タブのHTMLファイルにチェックがはいっていたら、swfファイルと一緒にHTMLファイルが生成されます。

そのHTMLファイルのソース内に、「AllowScriptAccess」の指定箇所がいくつかありますので、文字検索をして、この「AllowScriptAccess」の値を「sameDomain」→「always」に変更します。

例)

<param name="allowScriptAccess" value="sameDomain" />

 ↓ 変更 ↓

<param name="allowScriptAccess" value="always" />

といった感じです。

何分…自分用のメモ用に書いた記事ですので、分かり難くて申し訳ないです_(._.)_

結希猫(管理人) | 2010年12月21日 15:14

こんばんは、いつも勉強になる説明、お世話になっていマス。
初心者の質問なのですが、

パブリッシュしたときに、掃き出されたHTMLファイルを開いて、
ソースコード上にある「AllowScriptAccess」の指定箇所を
『always』に変更して、保存してください。

この場所が分かりません。
お時間ありましたら、お手数ですが説明を
よろしくお願いいたします。

ジャギすけ | 2010年12月20日 01:47