如何获取Flash以重新加载嵌入的父HTML页面?

时间:2020-03-06 14:23:24  来源:igfitidea点击:

我有一个运行在HTML页面中的运行Flash 8的Flash应用程序(SWF)。如何获取Flash以重新加载嵌入的父HTML页面?我尝试使用ExternalInterface调用JavaScript函数来重新加载页面,但这似乎不起作用。

解决方案

尝试这样的事情:

getURL(" javascript:location.reload(true)");`

检查动作脚本中的ExternalInterface。使用此方法,我们可以在代码中调用任何JavaScript函数:

if (ExternalInterface.available)
  {
    var result = ExternalInterface.call("reload");
  }

在"嵌入HTML"代码中,输入JavaScript函数:

function reload()
  {
    document.location.reload(true);
    return true;
  }

这样的好处是我们还可以检查函数调用是否成功并采取相应的措施。今天不应该再使用getUrl和对JavaScript的调用。这是一个古老的hack。

在Flash 10中,我们可以执行以下操作:

navigateToURL(new URLRequest("path_to_page"), "_self");

快速又肮脏:在大多数情况下都可以使用(根本不需要修改HTML页面):

import flash.external.ExternalInterface;

ExternalInterface.call("history.go", 0);