我正在使用基于哈希的导航构建Backbone.js应用程序。除IE7外,它在任何地方都能正常工在IE7中,当我点击更改哈希的链接时,会发生什么:
我在加载每个页面后通过向控制器添加saveLocation
调用来使链接工作,但是当我使用后退按钮或重新加载页面时,它总是将我带到主页而不是返回或重新加载当前页面。
如何使后退按钮和页面重新加载工作?
答案 0 :(得分:2)
我对骨干进行了一些更改,以使其适用于我。你可以在这看看我的回购:
https://github.com/juggy/backbone
到目前为止对我有用。如果我打破了别的什么,我不知道。我从YUI和https://github.com/cowboy/jquery-hashchange/blob/master/jquery.ba-hashchange.js启发了自己。
答案 1 :(得分:1)
我也遇到了与IE7相同的问题,并尝试了各种方式(saveLocation事物,Backbone补丁等)..但它没有成功。在通过许多页面切换时,IE7似乎有误解。
我的最终解决方案不是使用Backbone.history而是使用jQuery History Plugin。
http://tkyk.github.com/jquery-history-plugin/
我知道这是最糟糕的解决方法,因为此解决方案依赖于其他插件,但幸运的是,Backbone.Controller只处理您不必使用它的路由和状态处理。
jQuery History Plugin正常运行。
答案 2 :(得分:0)