我如何将用户从一个页面转向另一个页面,使用jQuery或纯粹的JavaScript?


当前回答

var url = 'asdf.html';
window.location.href = url;

其他回答

<script type="text/javascript">
var url = "https://yourdomain.com";

// IE8 and lower fix
if (navigator.userAgent.match(/MSIE\s(?!9.0)/))
{
    var referLink = document.createElement("a");
    referLink.href = url;
    document.body.appendChild(referLink);
    referLink.click();
}

// All other browsers
else { window.location.replace(url); }
</script>

因此,问题是如何创建一个重定向页面,而不是如何重定向到一个网站?

<script>
    var url = window.location.search.split('url=')[1]; // Get the URL after ?url=
    if( url ) window.location.replace(url);
</script>

http://www.mywebsite.com/redirect?url=http://stackoverflow.com

如果你去那个链接,它会自动将你转向stackoverflow.com。

这就是你用JavaScript创建一个简单的重定向页面的方式。

我添加了 window.location.replace 在我的代码,因为我认为它适合一个重定向页面,但是,你必须知道,当使用 window.location.replace 和你得到重定向,当你按下后按钮在你的浏览器它不会回到重定向页面,它会回到页面之前,看看这个小演示事物。

例子:

因此,如果这符合您的需求,那么一切都应该顺利。 如果您想将重定向页面在浏览器历史中取代这个

if( url ) window.location.replace(url);

if( url ) window.location.href = url;

你可以使用:

window.location.replace("http://www.example.com/");

替代() 方法不会在会议历史中保存起源页面,因此用户无法使用后按钮返回并重新转向。

但是,如果你想要一个与点击链接相同的效果,你应该去:

window.location.href = "http://www.example.com/";

在此情况下,浏览器返回按钮将是活跃的。

但是,如果有人想重新引导到主页,那么他可以使用下面的剪辑。

window.location = window.location.host

如果你有三种不同的环境,如发展、排行和生产,这将是有用的。

您可以通过在 Chrome 控制台或 Firebug 的控制台中放置这些单词来探索此窗口或 window.location 对象。

有很多方法可以做到这一点。

// window.location
window.location.replace('http://www.example.com')
window.location.assign('http://www.example.com')
window.location.href = 'http://www.example.com'
document.location.href = '/path'

// window.history
window.history.back()
window.history.go(-1)

// window.navigate; ONLY for old versions of Internet Explorer
window.navigate('top.jsp')


// Probably no bueno
self.location = 'http://www.example.com';
top.location = 'http://www.example.com';

// jQuery
$(location).attr('href','http://www.example.com')
$(window).attr('location','http://www.example.com')
$(location).prop('href', 'http://www.example.com')