Javascript 角度:单击浏览器后退按钮将用户带回家
如果用户在我的平台上,我想在用户单击浏览器的后退按钮时将用户带到主页 还有一个边缘案件需要处理, 如果用户通过谷歌搜索、Fb或直接进入链接来到我们的平台,那么我们无法阻止这种行为,但如果他已经在我们的平台上漫游,那么我们不希望每个后退按钮都将用户带回家 i、 eJavascript 角度:单击浏览器后退按钮将用户带回家,javascript,angular,routing,angular2-routing,browser-history,Javascript,Angular,Routing,Angular2 Routing,Browser History,如果用户在我的平台上,我想在用户单击浏览器的后退按钮时将用户带到主页 还有一个边缘案件需要处理, 如果用户通过谷歌搜索、Fb或直接进入链接来到我们的平台,那么我们无法阻止这种行为,但如果他已经在我们的平台上漫游,那么我们不希望每个后退按钮都将用户带回家 i、 e 用户输入链接并按下按钮=>带他回家 用户输入链接,现在单击按钮或链接,应用程序状态更改,现在用户单击浏览器后退按钮=>将用户带回previos页面(正常行为) 演示: 点击下面的链接,然后点击谷歌搜索的第一个链接,然后尝试点击浏览器后退
2.当单击browser back(浏览器返回)时,它会将我带回/page2。您可以使用
history.pushState(null,null,'https://twitter.com/hello');
并将应用程序的主页链接作为第三个参数传递。在这种情况下,按back将用户移动到主页
看看这里
或者:您可以使用
history.pushState(null,null,'https://twitter.com/hello');
并将应用程序的主页链接作为第三个参数传递。在这种情况下,按back将用户移动到主页
看看这里
或者:他们在该页面中所做的有点棘手。 诀窍是使用
history.pushState
创建新的历史记录,然后订阅该位置的pop事件,将网页更改为主页
我建议做一些稍微不同和简单的事情,代码只需要以下几行:
let locat = location.href;
if (!!window.location.pathname && window.location.pathname !== '/') {
history.replaceState(null,null,location.origin);
history.pushState(null, null,locat);
}
我们在这里所做的是使用history.replaceState(null,null,location.origin)将url更改为您想要的主页
然后使用history.pushState(null,null,locat)在历史记录中创建一个新条目代码>包含第一个url
这里的示例:
在这里尝试一下:
他们在那页上做的事情有点棘手。
诀窍是使用history.pushState
创建新的历史记录,然后订阅该位置的pop事件,将网页更改为主页
我建议做一些稍微不同和简单的事情,代码只需要以下几行:
let locat = location.href;
if (!!window.location.pathname && window.location.pathname !== '/') {
history.replaceState(null,null,location.origin);
history.pushState(null, null,locat);
}
我们在这里所做的是使用history.replaceState(null,null,location.origin)将url更改为您想要的主页
然后使用history.pushState(null,null,locat)在历史记录中创建一个新条目代码>包含第一个url
这里的示例:
在这里尝试一下:
它确实添加了一个新状态,但单击“后退浏览器”按钮除了从历史记录中删除状态外,没有其他作用。是否要发布一些代码以查看您的实现?这绝对是正确的方法,如果您看到底部的第二个链接,就会看到一个示例,其中包含code.window.history.pushState(null,'home','home');我甚至试过这个窗口。history.pushState(null,'home',')@mac-w你能看看页面底部的演示链接吗。因此,它不只是按下状态,而是在历史记录中按下时重定向到该状态。它确实添加了一个新状态,但单击“上一步浏览器”按钮除了从历史记录中删除状态外,没有其他作用。是否要发布一些代码以查看您的实现?这绝对是正确的方法,如果您看到底部的第二个链接,就会看到一个示例,其中包含code.window.history.pushState(null,'home','home');我甚至试过这个窗口。history.pushState(null,'home',')@mac-w你能看看页面底部的演示链接吗。因此,它不只是推动这个国家,而是在推动历史的同时重定向到那个国家。