

おつかれさまです。AS初心者のjunと申します。

`EventListner`の挙動は、サーバに置いた場合と、直接htmlを叩いた場合とで違いがあるのでしょうか？

というのは、下記のように、`flashVars`で渡された外部swfを読み込み表示させようとしました。

パブリッシュしたswfおよび、参照予定の外部swfをサーバに置いて叩いてみたら、ちゃんと表示されたのですが、`index.html`をローカル上でダブルクリックすると、`onComplete`メソッドすら叩かれないのです。

なんでなんでしょうか。

■`index.html`

[code]

    <embed src="swfPlayer.swf" width="300" height="500" FlashVars="file=test.swf">
    
[/code]

  
■`swfPlayer/Main.as`

[code]

    private function _load():void
    {
      :
    var fv: Object = LoaderInfo(this.root.loaderInfo).parameters;
    var file: String = String(fv["file"]);
    
    var loader : Loader = new Loader;
    var url : URLRequest = new URLRequest(file);
    loader.load(url);
    
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
      :
    }
    
[/code]

[code]

    private function onComplete(event:Event):void
    {
        Log.t("complete");
    
        var loaderInfo:LoaderInfo = event.target as LoaderInfo;
        var content:MovieClip = loaderInfo.content as MovieClip;
        addChildAt(content, 0);
    
        Log.t("complete-end");
    }
    
[/code]


CC BY-SA 3.0
2015-02-16T05:59:36.343
6550
2016-10-22T17:55:54.780
2015-02-16T10:44:23.100
8000
5113
question
flash actionscript
EventListnerの挙動は、サーバに置いた場合と、直接htmlを叩いた場合とで違いがあるのでしょうか？


Google Chromeで試されているのでしたら、  
以下のようにGoogle Chromeを実行してみるのはどうでしょうか。

[code]

    "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files
    
[/code]

Google Chromeはデフォルトだとローカルファイルへのアクセスに制限がかかるので、  
それを解除するオプションです。

ローカルで試す用としてこのオプションを加えたショートカットをよく利用しています。


CC BY-SA 3.0
2015-02-17T01:17:54.210
6601
2015-02-17T01:17:54.210
70
6550
answer