我正在尝试在Ember.js中的元素之后添加模板,但似乎是追加是现在唯一的选择。我正在使用jQuery遍历一个被点击的元素的父元素,然后想要添加模板after
父元素。
像这样导航:$(this).closest("li").after()
但是Ember.js的附件不起作用,因为我只能在父li中添加模板。
我遇到了这个拉取请求:https://github.com/emberjs/ember.js/pull/627会实现insertAfter()
方法,但由于这不在主分支中,我想知道是否还有其他方法可以做到这一点?
谢谢,
答案 0 :(得分:0)
我找到了解决方案。不确定这是最好的方法,但它的工作原理。我基本上是在任意地添加模板(在这种情况下,在点击的链接之后)然后在插入元素之后我使用jQuery使用$()移动它:
$(".commentReplyLink").live("click", function(){
var new_reply_template = Ember.View.create({
templateName: 'new_reply_template',
didInsertElement: function() {
this.$().closest("li").after(this.$());
}
});
new_reply_template.appendTo($(this).after());
});
以下是一个有效的例子:http://jsfiddle.net/givp/tnQJf/28/
答案 1 :(得分:-2)
您正在寻找的是place()函数。
http://uxebu.github.com/embedjs/docs/#place
// place(node, refNode, position)
embed.place("someNode", "anotherNode", "after");