• AS获取url参数


    AS获取url参数

    一、页面url参数

    这里是调用jseval方法(js中定义)返回url字符串

    var urlPath:String = ExternalInterface.call("eval", "window.location.href");//获取页面的url
    var param_info:String = urlPath.split("?")[1];//截取url中的参数

    Url字符串可以在js中通过window.location获取。

    Param_info即为参数字符串,读取单个参数值还需要进行解析。

    可以通过window.location方法获取URL   

    统一资源定位符 (Uniform Resource Locator, URL) 

     

    示例:   

    http://www.home.com:8080/windows/location/page.html?ver=1.0&id=timlq#love   

    1, window.location.href   整个URl字符串(浏览器中就是完整的地址栏  

    返回值:

    http://www.home.com:8080/windows/location/page.html?ver=1.0&id=timlq#love   

     

    2,window.location.protocol   

    URL 的协议部分   

    返回值:http:   

     

    3,window.location.host   

    URL 的主机部分,   

    返回值:www.home.com  

     

    4,window.location.port   

    URL 的端口部分。如果采用默认的80端口(update:即使添加了:80),那么返回值并不是默认的80而是空字符。   

    本例返回值:8080   

     

    5,window.location.pathname   

    URL 的路径部分(就是文件地址  

    返回值:/windows/location/page.html   

     

    6,window.location.search   

    查询(参数)部分。除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值   

    返回值:?ver=1.0&id=timlq   

     

    7,window.location.hash   

    锚点   

    返回值:#love

     

    二、swf url 参数

     

    主要就是使用LoaderInfo类获取加载swf时加载参数

     

    例:

    网页可以通过swf地址给flash传递变量,以值对的形式传递,如下:

              <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000"
                            id="LoaderInfoSample" width="100%" height="100%"
                            codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
                            <param name="movie" value="LoaderInfoSample.swf?a=1&b=2" />
                            <param name="quality" value="high" />
                            <param name="bgcolor" value="#869ca7" />
                            <param name="allowScriptAccess" value="sameDomain" />
                            <embed src="LoaderInfoSample.swf?a=1&b=2" quality="high" bgcolor="#869ca7"
                                    width="100%" height="100%" name="LoaderInfoSample" align="middle"
                                    play="true"
                                    loop="false"
                                    quality="high"
                                    allowScriptAccess="sameDomain"
                                    type="application/x-shockwave-flash"
                                    pluginspage="http://www.adobe.com/go/getflashplayer">
                            </embed>
            </object>
           
    ActionSrippt2时,在第一帧就可以直接引用传递进来的这两个变量值了。
    AS3抛弃了这种不规范的用法,同意使用LoaderInfoParameter属性来完成。

    LoaderInfo的帮助文档请参考:http://livedocs.macromedia.com/l ... lay/LoaderInfo.html
    LoaderInfo 这个类是专门设计来保存swf,图片,或者其他任意DisplayObject的加载信息的。
    swf参数也属于加载信息里的一部分,可以通过LoaderInfoparameters属性取得,取出的结果是一个数组,可以通过for...in遍历他的值。

    示例代码如下:
    package org.flashbbs.sample
    {
            import flash.display.MovieClip;
            import flash.display.LoaderInfo;
            import flash.text.TextField;
           
            public class LoaderInfoSample extends MovieClip
            {
                    public function LoaderInfoSample(){
                            var key:String;
                            var value:String;
                            var text1:TextField = new TextField();
                            addChild(text1);
                            var param:Object = this.root.loaderInfo.parameters;
                            for (key in param) {
                                    value = String(param[key]);
                                    text1.appendText(key + "=" +value);
                            }
                    }
            }
    }

    还有一点要注意的是,LoaderInfo属于As3的类,如果flash包含as1或者as2的代码,则它无法取出值,只能取出null

  • 相关阅读:
    007 Java引用数据类型
    005 Java数组
    002 Java 引用数据类型示例
    001 Java入门和简介
    2.接口测试工具-Postman
    1、接口测试-前言
    测试工程师的进阶之路
    接口测试概述
    期末作品检查
    完成个人中心—导航标签
  • 原文地址:https://www.cnblogs.com/wonderKK/p/2668467.html
Copyright © 2020-2023  润新知