2012-01-06 15 views
3

我需要在页面开始加载时(例如加载页面的头部部分)重定向页面,并且一旦它被重定向,阻止/停止其余部分加载页面内容和执行脚本的其余部分。重定向页面并阻止页面的其余部分执行并执行脚本

如果我在打开HEAD标记并将页面重定向到另一个页面后的第一行放置了这段代码(window.location =“/ other-page-url”;),它会停止执行下一个正在执行的脚本吗? 我想确定,如果有的话,让我们说,在第二行调用的一些计数器脚本,在重定向之后,它将不会执行。

可能JavaScript有一些停止页面加载/渲染的方法?

在此先感谢。

+0

而不是在客户端发起重定向,我建议发送一个'Location:...'标题,甚至在页面被渲染之前请求重定向。 – 2012-01-06 15:05:53

回答

-3

将用户重定向到其他页面后,当前页面将立即停止执行。

+0

这是否意味着用户不会注意到页面上的任何更改,除了地址栏中的URL更改?我的意思是,如果电脑或互联网连接速度慢,他们是否会看到页面的呈现? – mra214 2012-01-06 15:13:52

+0

@ mra214 - 正确。用户将看不到在页面上呈现的任何内容。 – 2012-01-06 15:18:21

+7

我遇到了同样的问题,并且在window.location =“/ new_url”之后立即向console.log添加了一些跟踪,表明脚本执行在重定向后不*停止。我在OSX上使用chrome,并没有在其他浏览器上测试过,但至少证明了所有浏览器的行为都不一致。 – 2012-04-18 14:49:39

0

使用<meta>标签在你<head>之前的任何<script>标签执行任何JavaScript之前,你可以这样做:

<meta http-equiv="Refresh" content="0; url=http://www.example.com/"> 

这只要它遇到的标签浏览器重定向到example.com。