【问题标题】:Problems targeting link in flash to an iframe for firefox将 Flash 中的链接定位到 Firefox 的 iframe 时出现问题
【发布时间】:2010-06-22 07:34:18
【问题描述】:

我会认为自己是新手,

我已经在 Flash 菜单中制作了按钮来播放动画并在点击时转到一个 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!");
  }
}

【问题讨论】:

    标签: flash actionscript-3 firefox iframe targeting


    【解决方案1】:

    我有这段代码 sn-p 来处理使用 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);
        }
    }
    

    原来不是我的代码,我丢失了链接。它可能来自广告横幅网站(如双击),所以如果我找到归属(或有人可以找到相关来源)我会添加它。

    【讨论】:

      猜你喜欢
      • 2020-07-09
      • 2011-01-20
      • 1970-01-01
      • 1970-01-01
      • 2010-10-25
      • 2011-12-28
      • 1970-01-01
      • 2018-09-22
      • 2010-12-05
      相关资源
      最近更新 更多