同位素:选择并在顶部显示.xx类

时间:2012-03-14 10:38:16

标签: javascript jquery sorting jquery-isotope

我正在使用Isotope中的排序方法(http://isotope.metafizzy.co/docs/sorting.html),并且需要在链接显示时在顶部显示分配了特定CSS类名的元素点击。其余元素必须在排序元素下方保持可见,因此我无法使用同位素过滤。

我对JS / jQuery不太满意所以我甚至不确定这个代码是否正确设置,但是目前我的元素按日期排序很好,但是它对所有元素都这样做。我希望我的代码能够找到类名为“blogs”的所有元素,然后按日期排列。到目前为止,这是我的代码:

    getSortData : {
      blogs : function( $elem ) {
        return $elem.attr('.blogs'), $elem.find('.date').text();
      }
    }

1 个答案:

答案 0 :(得分:3)

Isotope根据您提供的函数的返回值进行正常排序。

所以你需要返回一些将.blog元素放在顶部的东西..

我假设只使用$elem.find('.date').text()

的日期

所以要改变这一点,你可以在开头为.blog

的元素添加一个空格

尝试

getSortData : {
  blogs : function( $elem ) {
    var isBlog = $elem.hasClass('blogs');
    return (isBlog?' ':'') + $elem.find('.date').text();
  }
}

评论更新

    sortBy: 'initial',
    sortAscending : false,
    itemSelector: '.module',
    getSortData: {
        initial: function($elem) {
            return $elem.find('.date').text();
        },
        blogs: function($elem) {
            var isBlog = $elem.hasClass('blogs');
            return (isBlog ? '9' : '') + $elem.find('.date').text();
        },