Backbone.js仅在IE7中导致错误

Dom*_*ier 8 javascript internet-explorer-7 hashchange backbone.js

我正在使用后端的CodeIgniter和前端的Backbone.js开发Web应用程序.我也使用HTML5 Boilerplate作为我的开始模板.

我正在使用Backbone的Controller和History作为我的应用程序的主要导航.我过去曾经做过一次,一切都很好.问题是,当我使用Backbone.History.start()启动hashchange事件捕获并单击链接example.com/#home,url中的哈希更改时,事件被触发但是在2秒之后,哈希被清除从url和javascript错误只在ie7中抛出.

我通过创建一个运行间隔的IFRAME来检查哈希值的变化,看看源代码和hashchange事件是否在IE7中实现.

以前任何人都有这个奇怪的错误并知道如何解决这个问题?

Dom*_*ier 4

使用 Backbone 处理 #hash 基础应用程序的正确方法似乎是 Backbone.history.saveLocation( hash ) 并在 Backbone.history.loadUrl() 之后启用控制器的路由。

真希望我以前就知道这一点...享受这个很棒的 MVC 库的乐趣:)