我有一个嵌入随机网站的小部件。当用户点击时我调用服务器来更新发生的点击,服务器返回重定向到正确的页面。问题是浏览器的“后退”按钮不再有效。
我使用location.href进行重定向。
我尝试了location.replace - 它保留了后退按钮,但它会转到点击小部件的页面之前的页面(它将其替换为新页面)。
如何在向服务器报告后仍然允许后退按钮工作?
答案 0 :(得分:4)
您无法返回自动重定向的网页。这只是一个破损的按钮和一个沮丧的用户。
User goes to page A.
User clicks on link to page B.
Page B automatically redirects to page C with window.location.
User hits back button and momentarily goes back to page B.
Page B automatically redirects to page C with window.location.
User hits back button and momentarily goes back to page B.
Page B automatically redirects to page C with window.location.
User is sad.
显然这不起作用。它必须像这样工作:
User goes to page A.
User clicks on link to page B.
Page B automatically redirects to page C with window.location.replace().
User hits back button and goes back to page A.
User is happy.
如果你想让后退按钮工作,你必须使用window.location.replace()自动重定向。