0

我有一个嵌入了 Flash/Flex/AS3 的实时聊天应用程序,嵌入在一个简单的 HTML 页面中。

当用户单击链接或其他内容时,我想拦截页面退出并确认页面退出。

我的 Flash 应用程序中还有一个“停止”按钮,它可以在完成聊天后将用户重定向到另一个页面。

除了单击“停止”按钮之外,我如何拦截所有内容?

我现在有以下 JavaScript:

window.onbeforeunload = function (e) {
  var message = "Really want to exit?",
  e = e || window.event;

  // For IE and Firefox
  if (e) {
    e.returnValue = message;
  }

  // For Safari
  return message;
};

它运作良好。但是当我使用“停止”按钮时,它也会要求确认。

4

1 回答 1

1

你需要使用ExternalInterface. 在您的 JavaScript 代码中添加此方法:

function unsetBeforeUnload(){
   window.onbeforeunload = null;
}

现在在“停止”按钮单击处理程序方法中的 ActionScript 代码中添加以下行:

 ExternalInterface.call("unsetBeforeUnload");

就这样。可能您需要将此行添加到您的 Flash 对象:<param name="allowScriptAccess" value="always" />以防您现在没有它。

于 2013-06-10T14:22:14.563 回答