Flex获取URL中的参数

来源:互联网 发布:软件数字证书认证中心 编辑:程序博客网 时间:2024/05/01 14:34

当页面通过URL来传递参数时(page.html?id=123&name=aaa),可以在包含swf的html网页中先用javascript从url中截取包含参数的字符串,以FlashVar的形式传给swf,而在Flex中可以直接使用this.parameters.参数名来获取参数的值.

Sample:

html页面代码:

<html>
    
<body>
<script language=javascript> 

function writeflashobject(parastr) { 
    document.write(
"<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="550" height="400" id="FlashVars" align="middle"> "); 
    document.write(
"<param name="allowScriptAccess" value="sameDomain" /> "); 
    document.write(
"<param name="movie" value="useLib.swf" /> "); 
    document.write(
"<param name="FlashVars" value=""+ parastr +"" /> "); 
    document.write(
"<param name="quality" value="high" /> "); 
    document.write(
"<param name="bgcolor" value="#ffffff" /> "); 
    document.write(
"<embed src="useLib.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="FlashVars" align="middle" allowScriptAccess="sameDomain" FlashVars=""+ parastr +"" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />"); 
    document.write(
"</object>"); 

function getparastr() { 
    
var hrefstr,pos,parastr,para,tempstr1; 
    hrefstr 
= window.location.href; 
    pos 
= hrefstr.indexOf("?"
    parastr 
= hrefstr.substring(pos+1); 
    
return parastr; 

var parastr = getparastr(); 
writeflashobject(parastr); 

</script>
</body>
</html>
原创粉丝点击