我想在用户单击 flash 中的按钮时关闭网页。这是我使用的代码
public static function close():void{
// ExternalInterface.call("window.close()");
navigateToURL(new URLRequest("javascript:window.close();"),"_self");
}
这种方法现在看来已经过时了。它只适用于本地页面,使用 file:///访问,但以远程方式访问它,代码没有给我 **,甚至没有抛出安全错误。什么我应该怎么做?
最佳答案
更新:
遗憾的是,这对 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?
更新结束
我确信这是一个安全问题。 看看控制台,是不是有类似下面的东西?
脚本可能不会关闭不是由脚本打开的窗口。 @javascript:window.close();
我建议在 javascript 中创建一个函数来关闭窗口并使用外部接口(interface)调用该函数。像这样:
JS:
function closeWindow() {
...
}
作为:
if(ExternalInterface.available) {
ExternalInterface.call("closeWindow");
}
关于javascript - 如何在flash中关闭网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18056255/