【问题标题】:Actionscript 3 and navigateToUrl MethodActionscript 3 和 navigateToUrl 方法
【发布时间】:2011-11-15 01:54:46
【问题描述】:

我有一个带有一些按钮的 flash 文件来打开网址,我已经制作了 XML 文件来存储我的 URL,然后读取它们并解析它们并将按钮功能分配给打开 URL:

btnRadio.addEventListener(MouseEvent.CLICK,
function()
{
    navigateToURL (radiourl , "_blank");
});

此代码在开发过程中在 Flash Player 中运行良好,但当我发布它时它不起作用,谁能告诉我现在有什么问题?

【问题讨论】:

  • 是否会阻止您发布的来源弹出窗口?
  • 您是通过投影仪播放器执行,还是通过浏览器执行?
  • 我不这么认为,因为当我按下CTRL + Enter时它会运行,但是当我在浏览器中发布它时它不起作用
  • 我相信您需要确保将 allowScriptAccess 设置为“sameDomain”或“always”,同时将 swf 嵌入到 html 中。如果您通过本地链接 file:// 查看 swf,请确保您已在 flash 安全面板中授予它安全权限。

标签: flash actionscript-3 actionscript


【解决方案1】:

Ctrl+Enter 运行使用 Flash 播放器投影仪。当您发布到浏览器时,它只是在 html 中包含该 swf 并在浏览器中显示它。请注意,Flash Player 安全策略通过以下方式限制您:

  • navigateToUrl 和其他 http 通信功能只能在您从 http/https 域访问您的 html 时使用(除非您添加例外,从安全角度来看不推荐) .因此,在浏览器中打开 html 文件(在 file 域上这样做)将违反安全约束并且不允许使用 navigateToUrl

【讨论】:

  • 恐怕唯一的部分不是真的,只需将您的本地驱动器设置为例外,请参阅我的答案
  • 修复了答案...本来是想写这个的,但我忘记了,谢谢。
  • 我不明白从您的开发驱动器中打开它有多大风险 - 无论如何,您应该只在本地运行自己的 swf/html。
  • Bingo...关键词是你自己的。如果有人给了你一个 swf,你将它保存在 C 盘上并运行它,结果证明它是流氓,那么你就被困住了 :) Macromedia 设置这个限制是有原因的 :)
  • 好吧,老实说,我不认为我会运行其他人的 SWF。不过设置一个 wamp 似乎有点过分了
【解决方案2】:

转到以下站点: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html

单击下拉菜单,然后单击添加位置。添加你的“C:\”你的任何东西都是你的索引/swf 所在的开发驱动器。

从现在开始,“navigateToUrl”将按预期工作。

【讨论】:

    猜你喜欢
    • 2015-06-02
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-28
    相关资源
    最近更新 更多