我有一个非常简单的主干 js 结构。
var Step1View = Backbone.View.extend({
el:'.page',
render:function () {
var template = _.template($('#step1-template').html());
this.$el.html(template);
}
});
var step1View = new Step1View();
var Router = Backbone.Router.extend({
routes:{
"":"home"
}
});
var router = new Router;
router.on('route:home', function () {
step1View.render();
})
Backbone.history.start();
这很好用,但是我无法调用这个简单的 jquery 函数。
$(document).ready(function() { $('.tip').tooltip(); });
更新
小学生错误在这里。jquery onload 函数需要放在路由中。我对骨干很陌生,所以我不确定这是否是最佳做法。但以下工作。
render:function () {
var that = this;
var savings = new Savings();
savings.fetch({
success:function () {
var template = _.template($('#step3-template').html(), {savings:savings.models});
that.$el.html(template);
// put your jquery good ness here
$('.tip').tooltip();
$(".step3-form").validate();
}
})
}