window.location无法正常工作

大家好我从一个html页面导航到另一个html页面:

window.location = "test.html"; 

在test.html中我有标题:

  function redirect() { alert("inside redirect:"); //window.location = url; //history.back(); history.go(-1); return false; }   

但是这里的后退按钮(Go Back和Back1)都不起作用。 如果我使用$.mobile.changePage('test.html')在页面之间导航,那么两个后退按钮都可以工作。 为什么他们不与windows.location?

我想开发这个不支持ajax的B级浏览器的应用程序。 因此我不能使用$.mobile.changePage('test.html')

任何帮助将不胜感激。 谢谢。

这个Blackberry OS 5浏览器有很多问题。 最初我也试着做你现在正在做的事情。 但后来我认为你将不得不考虑其他一些更好的方法。 这是我如何解决它

首先在加载jquery-mobile脚本之前添加这些行

  

然后我使用了Single Html概念 。 在这个概念中我只需加载我的脚本一次,我可以使用jquery-mobile的changePage 。 当我有很多html页面时,我必须等待几秒钟,因为脚本的加载和卸载发生了。 避免这种情况,它是不必要的。

将所有页面都放在同一个Html中

 
. . .

然后,您可以轻松地像这样做一个changePage

 $.mobile.changePage("#page1", { transition : "slide" }); 

我希望你采取正确的方法。

为什么不使用window.location.replace("test.html") ;

尝试:

 window.location.href = "test.html"; 

要么:

 window.location.assign("test.html"); 

参见参考文献

在jQuery mobile中,您可以通过设置一些启动变量来关闭ajax。 您需要在加载jQuery mobile之前加载此脚本

 $(document).bind("mobileinit", function(){ //apply overrides here $.mobile.ajaxEnabled = false; }); 

关闭ajax后,您现在仍可以使用$ .mobile.changePage()。

现在要创建一个后退按钮,你要做的就是给链接一个data-rel =“back”的属性

 
  • Go Back