我有5个元素,我需要注入额外的跨度,而不是创建新的元素5次,我怎么能只这样做一次?我试过了
var holders= $$('.holders');
holders.each(function (el){
var addspan = new Element('span', {
'class': 'over'
});
el.inject(addspan , 'top');
});
但它不起作用 感谢任何帮助,谢谢!
答案 0 :(得分:4)
注射相反; it injects an element into another one。请尝试撤消addspan
和el
。
另一个选择是使用adopt
函数,这可能更直观地意味着元素采用另一个元素。
答案 1 :(得分:1)
与已提及的akaIDIOT类似,在使用addspan
方法时,您必须交换el
和inject
。要保存一行代码,可以使用以下新元素链接inject
方法:
var holders= $$('.holders');
holders.each(function(el) {
var addspan = new Element('span', {
'class': 'over'
}).inject(el, 'top');
});