如何在flash中关闭网页

时间:2013-08-05 10:44:06

标签: javascript actionscript-3 web

我想在用户点击flash中的按钮时关闭网页。这是我使用的代码

        public static function close():void{
//          ExternalInterface.call("window.close()");
            navigateToURL(new URLRequest("javascript:window.close();"),"_self");
        }

这种方法现在似乎过时了。它只适用于本地页面,使用file:///进行访问,但是以远程方式访问它,代码没有给我一个 * *,甚至没有抛出安全错误。我想做什么?

1 个答案:

答案 0 :(得分:2)

<强>更新

遗憾的是这对firefox没有帮助。问题不在于actionscript,而在于firefox如何处理window.close()函数。您可以通过尝试直接从javascript调用window.close()而不使用任何actionscript来复制它。这是一个安全限制。这里有一些相关的问题,答案和可能的解决方案:

Close windows that were not opened by script using javascript

在这里:

How can I close a window with Javascript on Mozilla Firefox 3?

END OF UPDATE


我确信这是一个安全问题。 看看控制台,是不是有类似下面的东西?

脚本可能无法关闭脚本未打开的窗口。 @javascript:window.close();

我建议在javascript中创建一个函数,关闭窗口并使用外部接口调用此函数。像这样:

JS:

function closeWindow() {
   ...
}

AS

if(ExternalInterface.available) {
  ExternalInterface.call("closeWindow");
}