我在这里有一个简单的路由器设置:
class Router extends Backbone.Router
routes:
'/a': 'a'
'/b': 'b'
a: -> alert 'a'
b: -> alert 'b'
app = new Router()
app.navigate '/a'
Backbone.history.start()
代码在这里: http://jsfiddle.net/tH2eW/
在使用中可以看到哈希 URL 发生变化: http://jsfiddle.net/tH2eW/show/
这有效,它会在哈希更改时运行代码。但我如何知道这是前进(单击链接加载新页面)还是后退按钮按下?如果我们要返回到上一个屏幕,我希望动画效果略有不同。
基于哈希的 URL 是否支持这种区分?
最佳答案
我们结束了做一些我不太高兴的事情。我们在 url 中对页面深度进行编码。
foo.html#!1/index
foo.html#!2/detail/123
然后我们可以轻松查看该数字是上升还是下降并相应地设置动画。它有效,但并不优雅。
关于javascript - 通过backbone.js 路由区分后退/前进导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9070684/