LoaderInfo的 Adobe 页面指出:
参数的两个来源是:主 SWF 文件的 URL 中的查询字符串,以及 FlashVars HTML 参数的值(这只影响主 SWF 文件)。
我们希望只接受 FlashVars 参数并忽略作为查询字符串的一部分传入的参数。这有可能吗?
LoaderInfo的 Adobe 页面指出:
参数的两个来源是:主 SWF 文件的 URL 中的查询字符串,以及 FlashVars HTML 参数的值(这只影响主 SWF 文件)。
我们希望只接受 FlashVars 参数并忽略作为查询字符串的一部分传入的参数。这有可能吗?
LoaderInfo有属性url ( root.loaderInfo.url
),你可以抓取它,解析它,你会得到与查询字符串一起传入的参数。然后,您可以从 中减去它们root.loaderInfo.parameters
。
这是迄今为止我能找到的唯一方法。建议表示赞赏。
不,这是不可能的,考虑到参数只是一个通用对象,其中包含一组由查询字符串或 flashvars 设置的本质上的键/值对。没有任何东西表明这些键/值的设置位置。
如果您有权访问嵌入代码,您可以做的一件事是在服务器端控制它。您也许可以编写一个脚本,去除查询字符串中出现的任何变量,并将干净的 swf url 写入页面,而不是使用变量。
同样值得注意的是,flashvars 优先于查询字符串 vars。因此,如果您foo=querystring
在查询字符串和foo=flashvars
flashvars 中有 a,则 foo 的值将导致“flashvars”。