仅在浏览器完全重定向后调用该函数?

时间:2011-02-10 15:10:30

标签: javascript html redirect

<script>
function test() {
    alert("this should only be called after the browser is fully redirected?");
}
window.location = "http://google.com";
test();
</script>

我是要将用户重定向到一个页面,我想在浏览器完全重定向后才能做某事(调用一个函数),但我无法让它工作。我有什么方法可以这样做吗?

4 个答案:

答案 0 :(得分:5)

  

我有什么方法可以这样做吗?

不。页面打开google.com后,您将无法再控制浏览器窗口。

答案 1 :(得分:2)

URL更改后,将停止当前页面的所有执行。

答案 2 :(得分:1)

不是真的。您必须将要重定向的页面放在一个框架中并将脚本保留在另一个框架中,然后监视内容框架以进行更新。但是你也会遇到跨域问题,因为Same Origin Policy(它管理从另一个文档[包含你正在运行的脚本的文档]对一个文档内容[新页面]的访问)。所以基本上,你不能这样做。

如果您发布一个单独的问题,说明您之后通过运行更多代码尝试实现的目标,那么人们可能会帮助您采用其他方法。

答案 3 :(得分:0)

我不相信这会奏效。它是XSS /注入的一种形式,因此存在安全风险。我不认为W3C允许这种事情,因为它非常危险。一旦用户加载不同的页面,浏览器就会忽略前一个页面。

http://www.coderanch.com/t/439675/HTML-JavaScript/Javascript-call-AFTER-redirect

看到那家伙的视觉答案