firefox和javascript重定向

xij*_*ijo 4 javascript firefox jquery history

我目前有一个firefox的问题,所有其他浏览器都以正确的方式运行 - 甚至是IE6!

我想要做的是重定向到子页面但留下历史记录条目.据我所知,有两种方法可以重写网址:

  • window.location ="some.url"; - 使用历史记录条目重定向到some.url
  • window.location.replace( "some.url"); - 没有历史记录输入的重定向

所以我必须使用第一个并在firebug控制台测试everthing工作正常.

现在这个问题有一种奇怪的部分:在控制台中运行良好的相同语句不在某些jQuery回调处理程序中:

jQuery("#selector").bind("submit", function() {
  $.getJSON("some_cool_json", function(response) {
    var redirect_path = response.path;
    window.location = redirect_path;
  });
  return false;
});
Run Code Online (Sandbox Code Playgroud)

哪里response_path设置正确,我查了一下!即使重定向工作正常,但没有创建历史记录条目.

关于那个的任何想法?会很好!;)

干杯

Phi*_*off 7

使用assign():

window.location.assign("http://...");
Run Code Online (Sandbox Code Playgroud)

replace(url)
将当前文档替换为提供的URL处的文档.与assign()方法的不同之处在于,在使用replace()之后,当前页面将不会保存在会话历史记录中,这意味着用户将无法使用"后退"按钮导航到该页面.