Изотопные Динамические Сорта

Я использую плагин JQuery Isotope (http://isotope.metafizzy.co/), который потрясающий, но у меня есть проблемы с созданием сортировок. Это скорее проблема JavaScript, чем что-либо, связанное с самим изотопом.

Проблема в том, что я строю данные сортировки динамически. Итак, я создал функцию, которая делает sortData. Пример ниже:

function getSortData(){
    sortData = {};
    var sorts = ['symbol', 'number', 'score', 'name'];
    for (var i in sorts) {
      sortData[sorts[i]] = function($elem) {
        console.log(sorts[i]);
        return parseInt($elem.find('.'+ sorts[i]).text());     
      }
    }
    return sortData;
  }

Таким образом, проблема в том, что анонимная функция внутри всегда запускается после выполнения всей функции getSortData (). В результате последний элемент в массиве сортировки присваивается переменной sort [i].

Это показано в этой скрипке:http://jsfiddle.net/xzZR4/ Вы увидите, что элемент 'name' всегда выводится на консоль.

Я не могу придумать другой способ создать объект getSortData, который позволит передать правильное имя сортировки.

У кого-нибудь есть идеи?

Ответы на вопрос(1)

Ваш ответ на вопрос