Сопоставить имена классов с отдельными массивами, используя jQuery - PullRequest
0 голосов
/ 13 января 2012

Допустим, у нас есть следующий html:

 <ul id="portfolio-list" class="clearfix span-24">

  <li class="2012#foo bar car#cat_1">item 1 <br /></li>
  <li class="2011#car foo fly#cat1">item2 <br /></li>
  <li class="2009#car fly swat_car#cat_2">item3<br /></li>
  <li class="2012#bar show car#cat_3">item 4<br /></li>

</ul>

и я хочу создать карту классов каждого элемента, чтобы сделать следующее:

  1. Я пытаюсь разбить код на три части
  2. вывод каждого куска и
  3. добавить их в свой массив значений.

Используя следующий код, он возвращает значение только из последнего элемента списка.

Как мне заставить его перебирать ALL элементов списка и добавлять значения для каждого элемента списка.

код следует:

jQuery(document).ready(function($) {
    var splitList = $("#portfolio-list li").map(function() {
        inStringy = $(this).attr("class").split('#');
        list = $(this).attr('class');
        list = list.split("#").join(" ");
        $(this).removeClass();
        var that = $(this);
        $(that).addClass(list);
        return inStringy;
    });

    cla = [];
    yr = inStringy[0]; 
    classListin[classListin.length] = cla + "";
    categoryListin[categoryListin.length] = cat + " ";
    cla = inStringy[1];
    cla = cla.split(" ");
    cat = inStringy[2];
    yearListin = [];
    classListin = [];
    categoryListin = [];
    yearListin[yearListin.length] = yr + "";
    classListin[classListin.length] = cla + "";
    categoryListin[categoryListin.length] = cat + " ";
});

Буду признателен за любую помощь !!!

1 Ответ

0 голосов
/ 14 января 2012

Глобалы повсюду!См. Комментарии для объяснений.

// ответ перенесен на скрипку: http://jsfiddle.net/VyFc8/

...