使用JS :的(在<head>
标记中)
<script>window.location="https://stackoverflow.com";</script>
使用PHP的 : (在<head>
标记中)
header('Location: https://stackoverflow.com');
end();
我应该用哪一个?还是另一个?
和使用 <meta>
怎么样?
<meta http-equiv="refresh" content="0;url=https://stackoverflow.com"/>
有很多好的答案,我不知道我会接受哪一个答案,非常感谢
发布于 2013-03-27 17:04:12
所有选项的结果都是相同的。重定向。
HTML中的<meta>
:
JS中的window.location
:
支持needed.
if (1 === 1) { window.location.href = 'http://example.com'; }
.PHP中的header('Location:')
:
header()
必须是php脚本中的第一个命令。如果您尝试输出一些之前的标题,将收到一个Warning: Cannot modify header information - headers already sent
发布于 2013-03-27 17:09:13
在JS中设置位置的更好方法是通过:
window.location.href = 'https://stackoverflow.com';
是否使用PHP或JS来管理重定向取决于您的代码正在做什么以及如何做。但是,如果您处于使用PHP的位置;也就是说,如果您要使用PHP将一些JS代码发送回浏览器,而这些JS代码只是告诉浏览器转到其他地方,那么逻辑建议您应该跳过中间人,直接通过PHP告诉浏览器。
发布于 2013-03-27 17:18:01
这取决于您希望如何以及何时将用户重定向到另一个页面。
如果您想立即将用户重定向到另一个页面,而不让他看到中间站点的任何内容,那么您应该使用 header
重定向方法。
如果你有一个Javascript和用户的一些行为必须导致他进入另一个页面,那就是你应该使用window.location
。
每当您看到这些“您的下载应自动开始”消息时,下载站点上通常都会使用meta
标签刷新。你可以让用户加载一个页面,等待一段时间,然后在没有Javascript的情况下重定向()他(例如要下载的文件)。
https://stackoverflow.com/questions/15655017
复制相似问题