将多个属性复制到一个元素

时间:2012-02-14 05:56:45

标签: jquery attributes attr

我目前在尝试将一堆列表项中的所有属性复制到第一个列表项时遇到了一些麻烦。

我想将第一个列表项(All)添加到列表顶部,然后将所有数据过滤器属性从下面的元素复制到All,因此它们看起来像data-filter =“。ant ,.蜜蜂,.bug,.moth“

这是我的jsfiddle:http://jsfiddle.net/8e4Kv/1/

非常感谢任何建议,

谢谢!

Big D

2 个答案:

答案 0 :(得分:0)

您可以使用jQuery的$.each()函数首先遍历每个列表项的data-filter属性,然后将每个属性分配给前置元素。

答案 1 :(得分:0)

下面的内容可以完成这项任务,

DEMO

$(function() {

    var $li = $('ul li[data-filter]');

    var allAttr = [];        
    $li.each (function () {
        allAttr.push ($(this).attr('data-filter'));
    });

    $('<li>All</li>')
      .insertBefore('ul li:first-child')
      .attr('data-filter',allAttr.toString());

});