十一月 29, 2009 7 : 04 下午 此格有 173 个脚印
即时获得麻球游戏开发的最新消息,关注游戏开发者热门讨论,请各位开发者申请加入麻球官方群:121304476
也可以follow catfly围脖:t.sina.com.cn/iscat
也可以follow catfly围脖:t.sina.com.cn/iscat
flash可以有三种常用的途径获取url参数
- 用JavaScript对象来定义你的flashvars
- flash本身的路径src
- 页面地址url
js定义的flashvars参数
在页面中嵌入flash时用js定义的参数,通过定义一个paramObj对象
var paramObj:Object = LoaderInfo(root.loaderInfo).parameters来访问传入的参数。
页面中的代码
<script type="text/javascript">
var params = {};
params.allowfullscreen = "true";
params.allowscriptaccess = "always";
var flashvars = {vv:"js_test"};
swfobject.embedSWF("var.swf?id=11&mm=src_test", "swfDiv", "720", "520", "9.0.0", false, flashvars, {}, {});
</script>
actionscript代码
var paramObj:Object = LoaderInfo(root.loaderInfo).parameters;
if(paramObj["vv"]){
tf.text = "js添加变量vv值:"+paramObj["vv"];
}
flash路径src中的参数
在页面嵌入flash的路径中,如”var.swf?id=11&mm=src_test”传递参数。
这种情况跟访问js定义的参数相同的方法来访问
if(paramObj["mm"]){
tf.appendText("n"+"flash路径变量mm值:"+paramObj["mm"]);
}
页面地址中的参数
也可以通过页面地址来传递参数,如”http://www.catfly.cn/wp-content/uploads/2009/11/Variables/var.html?page=233&name=robin”。
这种情况可以使用一个开源的类QueryString来获取参数。
这里我做了一个checkVar函数来检查在页面地址中是否存在某个参数。
可以访问下面的链接测试效果:
url中无参数
url中无name参数
url中有name参数
var url:String=ExternalInterface.call("document.location.search.toString");
if(url){
tf.appendText("n"+"url变量是否存在:"+String(checkVar(url,"name")));
if(checkVar(url,"name")){
var qs:QueryString = QueryString.getInstance();
tf.appendText("n"+"url变量name值:"+qs.getValue("name"));
}
}
function checkVar(_url:String,vName:String):Boolean{
var hasVar:Boolean;
if (_url.split("?")[1]){
var varsArr:Array = _url.split("?")[1].split("&");
for(var i:uint=0;i
var varName:String = varsArr[i].split("=")[0];
if(varName && varName==vName){hasVar = true;}else{hasVar = false;}
}
}else{
hasVar = false;
}
return hasVar;
}
文章示例文件下载
Tag鱼片:
QueryString url Variables 参数






