【问题标题】:How to pass on data through navigateToURL?如何通过 navigateToURL 传递数据?
【发布时间】:2013-02-23 05:26:11
【问题描述】:
navigateToURL(new URLRequest("other.html"), "_self");

other.html 中嵌入了一个 swf。 有没有办法可以将变量传递给嵌入在 other.html 中的 swf。

原因是我需要告诉 swf 用户是否已登录,如果他已登录,请将用户详细信息传递给它。随意建议可能更有效的替代方法。

我的整个网站都是用 Flash 制作的。

谢谢

【问题讨论】:

  • 真的不是想居高临下,但你为什么要在 Flash 中制作整个网站? flash 将在几年后不存在,它所使用的一切都已被 HTML5/SVG/Canvas 取代。你现在只会让你未来的生活变得更加困难,用 Flash 写一个网站。另一个大问题是最大的新兴互联网市场(移动),由于我已经说过的所有原因,iPad/iPhone 不支持闪存。你不应该用它来建立一个网站。 flash 最多只能用于一个小的非必要小部件,但即使是 javascript/HTML5
  • @G.Shearer 我明白这一点,但我正在做一个学校项目,而不是一个真正有用的网站,除了让我取得好成绩外,它对任何其他方式都有用。而且我觉得闪光灯很舒服,所以我就用了它。
  • Flash 在游戏、视频和企业应用程序这三个领域仍然拥有光明的未来。不过 Flash 网站已经死了,我会告诉你的 ;)
  • 更好的解决方案是将第二个 swf 加载到第一个中,而不是转到新页面 - 假设这是您项目的一个选项。
  • @LeeBurrows 这是我最初的想法,但是 - stackoverflow.com/questions/14988407/…

标签: actionscript-3 flash url web


【解决方案1】:

好久没写flash了,不过假设'+'是字符串拼接的方式……

对于 GET 变量,我会这样做:

var url:String = "other.html";
url += "?someParam=someValue";
url += "&someOtherParam=someOtherValue";
navigateToURL(new URLRequest(url), "_self");

这有效地制作了您的网址:

"other.html?someParam=someValue&someOtherParam=someOtherValue"

编辑:

类似这样的东西来实际获取查询变量...

function loaderComplete(myEvent:Event)
{
  var myQueryStrings=this.loaderInfo.parameters;
  var someParamValue:String=myQueryStrings.someParam;
}

this.loaderInfo.addEventListener(Event.COMPLETE, loaderComplete);

【讨论】:

  • 嗯,以及 swf 将如何访问这些值。对不起,我是新手。
  • appendText() 是串联的方法
  • appendText() 用于文本组件。对于字符串,使用 += 连接。
  • 不确定我是否遗漏了一些非常明显的东西,但我似乎无法识别闪存能够检测到这些变量的任何方式。变量是否必须通过 php 或 xml 或类似的东西,或者我可以直接访问它们吗?任何教程链接或示例将不胜感激。
  • 我刚刚添加的代码将允许您在 swf 完成加载后捕获变量
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-06
  • 1970-01-01
  • 1970-01-01
  • 2021-09-30
  • 2014-11-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多