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


当前回答

我们不能简单地使用 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
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')

ECMAScript 6 + jQuery,85 字节

$({jQueryCode:(url)=>location.replace(url)}).attr("jQueryCode")("http://example.com")

请不要杀我,这是个玩笑,这是个玩笑这是一个笑话。

这“为问题提供了答案”, 意思是它要求找到“使用jQuery”的解决方案,

Ferrybig显然需要解释笑话(还是开玩笑,

其他的答案是使用 jQuery 的attr()会 议 日 程 和 议 程locationwindow不必要的物体。

这个答案也滥用了它, 但以一种更荒谬的方式。 它不是用它来设定位置, 而是用它来设置位置,attr()获取设置位置的函数。

函数被命名jQueryCode即使它没有任何jQuery, 并且号召一个函数somethingCode特别是当事情甚至不是语言的时候。

“85字节”是指高尔夫代码。高尔夫显然不是你在高尔夫代码之外应该做的,此外,这个答案显然不是实际的高尔夫。

基本上, 畏缩。

所以,问题在于如何改变页面方向, 而不是如何改变网页方向?

您只需要为此使用 JavaScript 即可。 这里有一些小代码, 可以创建一个动态重定向页面 。

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

所以说,你只是把这个片段redirect/index.html在您网站上的文档中,您可以这样使用它 。

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

如果你去那个链接 它会自动引导你到堆叠流. com.

链接到文档

这就是你如何制造简单使用 JavaScript 重定向页面

编辑 :

还有一件事需要指出。window.location.replace在我的代码中,因为我认为它适合 重置页面, 但是,你必须知道,当使用window.location.replace当您在浏览器中按回按钮时,它会被重定向回到重定向页面, 它会回到之前的页面, 看看这个小演示的东西。

示例:

进程:家居存储店 => 将页面重定向到谷歌 => 谷格

当谷歌:谷格 => 在浏览器中的后退按钮 => 家居存储店

因此,如果这适合您的需求, 那么一切都应该很好。 如果您想要在浏览器历史中包含重置页面, 替换此

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

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

简在JavaScript 贾斯克里普特,您可以通过下列方式将方向转向特定页面:

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

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

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

使用 j 查询 :

$(window).attr("location","http://www.test.com");

基本上jj 查询只是一个JavaScript 贾斯克里普特和做一些诸如转向在此情况下, 您可以使用纯 JavaScript, 这样您就有三个选择, 使用 vanilla JavaScript :

(1) 使用地点替换,这将取代页面的当前历史,这意味着无法使用后退按钮返回原始页面。

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

2) 使用地点指派,这将保留您的历史,如果使用后按钮,您可以回到原始页面:

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

3) 我建议使用其中一种方法, 但这可能是使用纯JavaScript的第三个选择:

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

您也可以在 jQuery 中写入一个函数来处理它, 但由于它只是一行纯 JavaScript 函数, 您也可以在 jQuery 中写入一个函数来处理它, 但由于它只是一行纯 JavaScript 函数, 您也可以使用所有上面没有窗口的函数, 如果您已经进入窗口范围, 例如window.location.replace("http://stackoverflow.com");可以是location.replace("http://stackoverflow.com");

我还在下面的图像上展示了所有这些照片:

location.replace location.assign