我最近建立了一个基于Emberjs和twitter bootstrap的页面。该页面是使用令人敬畏的emberjs绑定引擎动态构建的。我目前有一个控制器,有界视图在html中呈现一个列表。
{{#each App.myArrayController}}
{{#view App.MyItemListView contentBinding="this"}}
<span>{{view.somethingToPrint}}</span>
{{/view}}
{{/each}}
这样,你猜我在span标签中打印了{{view.somethingToPrint}}
数组内容的N倍。
现在我正在考虑渲染一个jQuery UI滑块列表。我的问题是,鉴于它们将动态生成,我何时必须调用$(".slider").slider();
init方法才能使其“生效”。实际上,通常的方法是什么?
我想过使用以下一个:
$(".slider").slider();
。但我仍然不相信那些。我习惯使用twitter的Bootstrap,在大多数情况下,不需要混淆后渲染脚本调用(这是正确的“bootstrap”)。
答案 0 :(得分:2)
这是一个例子,为了不留下未答复的问题;)
jsfiddle:http://jsfiddle.net/Sly7/bHL66/
<强>的javascript 强>
App = Ember.Application.create();
App.myArrayController = Ember.ArrayController.create({
content: [
Ember.Object.create({firstName: "Gart", lastName: "Algar"}),
Ember.Object.create({firstName: "Wayne", lastName: "Campbell"})
]
});
App.MyItemListView = Ember.View.extend({
didInsertElement: function(){
this.$().hide();
this.$().fadeIn(1000);
},
somethingToPrint: function(){
return this.get('content.firstName') + ' ' + this.get('content.lastName');
}.property()
});