使用backbone.js路由区分后向/前向导航

时间:2012-01-30 20:59:26

标签: javascript backbone.js coffeescript

我在这里设置了一个简单的路由器:

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/

在使用中您可以看到哈希网址更改: http://jsfiddle.net/tH2eW/show/

这很有效,它在哈希值发生变化时运行代码。但我怎么知道它是否是一个前锋(点击一个链接来加载一个新页面)或者它是否是一个后退按钮?如果我们回到之前的屏幕,我想以稍微不同的方式制作动画。

基于哈希的URL是否支持这种区分?

1 个答案:

答案 0 :(得分:0)

我们结束了做一些我不太高兴的事情。我们在网址中对页面深度进行编码。

foo.html#!1/index
foo.html#!2/detail/123

然后我们可以很容易地看到这个数字是上升还是下降并相应地制作动画。它很有效,但不是很优雅。