2

我有 5 个元素需要注入额外的跨度,而不是创建新元素 5 次,我怎么能只做一次?我试过了

var holders= $$('.holders');
holders.each(function (el){
var addspan = new Element('span', {
    'class': 'over'
});
    el.inject(addspan , 'top');
});

但它不起作用任何帮助表示赞赏,谢谢!

4

2 回答 2

4

注入则相反。它将一个元素注入另一个元素。尝试反转addspanel

另一种选择是使用该adopt功能,这可能更直观地意味着让一个元素采用另一个元素。

于 2013-01-22T14:56:33.073 回答
1

就像已经提到的 akaIDIOT 一样,您必须在使用该方法时交换addspan和。要节省一行代码,您可以将方法与新元素链接起来,如下所示:elinjectinject

var holders= $$('.holders');
holders.each(function(el) {
    var addspan = new Element('span', {
        'class': 'over'
    }).inject(el, 'top');
});
于 2013-01-31T22:25:51.593 回答