1

私は自分自身を初心者と見なします。

フラッシュ メニューにボタンを作成してアニメーションを再生し、クリックすると URL に移動し、URL ページが iframe に読み込まれるようにしました。

Safari ではすべて正常に動作しますが、Firefox の新しいタブに URL ページをロードすることになります。

誰かが解決策を持っていれば、本当に感謝しています。本当にありがとう。

これがアクション スクリプトで、iframe の名前は「myframe」です。

present_btn.addEventListener(MouseEvent.CLICK,goPresent);
function goPresent(evt:MouseEvent):void {

  // play();

  present_btn.gotoAndPlay("present");

  var url:String = "http://www.ecuad.ca/~vlo/corelam/blank.html";
  var request:URLRequest = new URLRequest(url);
  try {
    navigateToURL(request, "myframe");
  } catch (e:Error) {
    trace("Error occurred!");
  }
}
4

1 に答える 1

0

ほとんどの場合に機能するように見える as3 を使用してウィンドウを開く処理を処理するために、このコード スニペットがありました。

private function getBrowserName():String
{
    var browser:String;
    //Uses external interface to reach out to browser and grab browser useragent info.
    var browserAgent:String = ExternalInterface.call("function getBrowser(){return navigator.userAgent;}");
    //Determines brand of browser using a find index. If not found indexOf returns (-1).
    if(browserAgent != null && browserAgent.indexOf("Firefox")>= 0) 
    {
        browser = "Firefox";
    }
    else if(browserAgent != null && browserAgent.indexOf("Safari")>= 0)
    {
        browser = "Safari";
    }
    else if(browserAgent != null && browserAgent.indexOf("MSIE")>= 0)
    {
        browser = "IE";
    }
    else if(browserAgent != null && browserAgent.indexOf("Opera")>= 0)
    {
        browser = "Opera";
    }
    else 
    {
        browser = "Undefined";
    }
    return (browser);
}

function openWindow(url:String, target:String='_blank', features:String=""):void
{
    const WINDOW_OPEN_FUNCTION:String = "window.open";
    var myURL:URLRequest = new URLRequest(url);
    var browserName:String = getBrowserName();
    switch(browserName)
    {
        //If browser is Firefox, use ExternalInterface to call out to browser
        //and launch window via browser's window.open method.
        case "Firefox":
            ExternalInterface.call(WINDOW_OPEN_FUNCTION, url, target, features);
        break;
        //If IE,
        case "IE":
            ExternalInterface.call("function setWMWindow() {window.open('" + url + "', '"+target+"', '"+features+"');}");
        break;
        // If Safari or Opera or any other
        case "Safari":
        case "Opera":
        default:
            navigateToURL(myURL, target);
        break;
    }
}

private function handleMouseClick(event:MouseEvent):void
{
    var sURL:String;        
    if((sURL = root.loaderInfo.parameters.clickTag))
    {
        openWindow(sURL);
    }
}

もともと私のコードではなく、リンクを失いました。それは広告バナー Web サイト (doubleclick など) からのものだったので、帰属を見つけた場合 (または誰かが関連ソースを見つけた場合)、それを追加します。

于 2010-06-22T09:08:23.050 に答える