【问题标题】:pass URL parameter to loaded swf将 URL 参数传递给加载的 swf
【发布时间】:2012-10-01 20:03:30
【问题描述】:

我有 html 页面传递参数给 swf:

<param name="movie" value="Template.swf?xmlName=63">

我可以访问我的 swf 文件中的参数值:

var val:String = root.loaderInfo.parameters.xmlName;

so val = 63

但现在我要通过前一个 swf 加载另一个 swf。如何从第二个(加载的)swf 调用参数?

【问题讨论】:

    标签: actionscript-3


    【解决方案1】:

    最简单的方法是使用LocalConnection。假设两个 swf 都在同一个域上:

    已加载 SWF:

    var connection:LocationConnection = new LocalConnection();
    connection.connect("connectionName");
    
    function yourMethod(value:String):void
    {
        trace("I received "+value);
    }
    

    调用 SWF:

    var connection:LocationConnection = new LocalConnection();
    var param:String = root.loaderInfo.parameters.xmlName;
    conn.send("connectionName","yourMethod",param);
    

    有关 LocalConnection 的更多信息,请参阅here

    【讨论】:

      【解决方案2】:

      您可以像在 html 中一样传递变量

      var val:String = root.loaderInfo.parameters.xmlName;
      var urlRequest:URLRequest = new URLRequest("second.swf?xmlName=" + val);
      loader.load(urlRequest);
      

      【讨论】:

        【解决方案3】:

        感谢您的帮助,但我这样做更简单 我从加载的 swf 访问了 var val:

        var xmlTextName:String ;
        var asdasd:Object;
        asdasd = this.parent.parent.parent.parent;  
        xmlTextName = String(asdasd.val)// xmlTextName =63
        

        我不知道是什么或为什么,但它现在正在运行(:

        【讨论】:

          猜你喜欢
          • 2018-06-29
          • 2015-08-07
          • 1970-01-01
          • 1970-01-01
          • 2012-12-06
          • 2022-01-05
          • 2010-10-03
          • 1970-01-01
          • 2012-10-08
          相关资源
          最近更新 更多