使用jQuery或纯 JavaScript 如何将用户从一页转到另一页?


当前回答

使用 jQuery/JavaScript 重定向用户

使用 jQuery 或 JavaScript 中的定位对象, 我们可以将用户重定向到另一个网页 。

在 jQuery 中

将用户从一页转到另一页的代码是:

var url = 'http://www.example.com';
$(location).attr('href', url);

在 JavaScript 中

将用户从一页转到另一页的代码是:

var url = 'http://www.example.com';
window.location.href = url;

var url = 'http://www.example.com';
window.location = url;

其他回答

我们不能简单地使用 jQuery 重置

j/ 查询没有必要,window.location.replace(...)最好模拟 HTTP 重定向 。

window.location.replace(...)优于使用window.location.href,因为replace()用户不会陷入永无止境的后端故障中。

如果您想要模拟某人点击链接, 请使用location.href

如果您想要模拟 HTTP 重定向,请使用location.replace

例如:

// similar behavior as an HTTP redirect
window.location.replace("http://stackoverflow.com");

// similar behavior as clicking on a link
window.location.href = "http://stackoverflow.com";

这样做有三个主要途径,

window.location.href='blaah.com';
window.location.assign('blaah.com');

还有...

window.location.replace('blaah.com');

最后一个是最好的, 用于传统的重定向, 因为它不会保存您在搜索历史中被重定向之前的页面。 但是, 如果您只想用 JavaScript 打开一个标签, 您可以使用上述任何选项 。1

爱迪特:window前缀是可选的 。

这很容易执行。 您可以使用 :

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

这将记住上一页的历史。 这样可以点击浏览器的后键返回历史 。

或者:

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

此方法不记得上一页的历史。 在此情况下, 后端按钮会被禁用 。

尝试此 :

location.assign("http://www.google.com");

示例代码片断.

jj 用于重定向页面或 URL 的查询代码

第一路

这是用于重定向页面的 jQuery 代码 。 既然, 我已经把这个代码放在$( document). ready () 函数上, 一旦页面加载, 它将会立即执行 。

var url = "http://stackoverflow.com";
$(location).attr('href',url);

您甚至可以直接将一个 URL 直接传送到attr()方法,而不是使用变量。

第二路

 window.location.href="http://stackoverflow.com";

您也可以使用这样的代码(两者在内部相同):

window.location="http://stackoverflow.com";

如果您对窗口. 位置和window.location.href,然后你可以看到后一个设置href明确表明财产,而前者默示地这样做。window.location返回一个对象,该对象默认设置它.href财产。

第三路

使用 JavaScript (JavaScript)replace()方法方法的计算方法的计算方法window.location对象。您可以将新的 URL 传送到replace()方法, 它将模拟 HTTP 重定向。 顺便说一下, 记住window.location.replace()方法不会在会话历史中放置原始页面, 这可能影响到后按钮的行为。 有时, 它会是你想要的, 所以要小心使用它 。

// Doesn't put originating page in history
window.location.replace("http://stackoverflow.com");

第四路

缩略location.assign()方法在浏览器窗口中装入新文档。

window.location.assign("http://stackoverflow.com"); 

和(或)assign()replace()方法为location.replace()从文档历史中删除当前 URL 的方法,因此无法返回原始文档。您不能使用浏览器。后退按钮。如果您想要避免这种情况,应该使用location.assign()方法,因为它在浏览器中装入一个新的文档。

第五路

类似attr()方法 (在 jQuery 1. 6 引入后)

var url = "http://stackoverflow.com";
$(location).prop('href', url);