我的问题是:
所有 HTML 都在 <div id="application">
中容器,默认情况下有 0
不透明度。这是因为 JavaScript 做了一些 DOM 定位,所以当这一切都完成后,我只需添加一个 class="rendered"
。进入<div id="application>"
然后页面出现。
所以问题是,对于我的 Backbone 路由器中的每条路由,我需要始终在实际路由之前或在每条路由上触发的东西,这可能吗?
感谢您的帮助!
最佳答案
Backbone.Router
在路由触发时发出事件,因此您可以绑定(bind)
特定事件或 all
以捕获所有有效的路由更改。事件
参数将包含路由回调名称:
var MyRouter = Backbone.Router.extend({
routes: {
"foo": "bar"
},
initialize: function() {
this.on('all', function(routeEvent) {
// If you had clicked #foo, routeEvent would contain
// `route:bar`. You can trigger your CSS changes here.
});
}
});
我觉得这种代码在 View 中会更好,但这应该 做你要求的事。
关于javascript - 每条路线上的主干路由器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12772996/