Isotope: seleziona e visualizza la classe .xx in alto
-
13-12-2019 - |
Domanda
Sto usando i metodi di smistamento all'interno dell'isotope (http://isotope.metafizzy.co/docs/sorting.html) e devono visualizzare elementi con un nome specifico della classe CSS assegnato a loro in alto quando è un collegamentocliccato.Gli elementi rimanenti devono rimanere visibili sotto gli elementi ordinati in modo da non poter utilizzare il filtraggio dell'isotopo.
Non sono così comodo con JS / JQuery quindi non sono nemmeno sicuro se questo codice è persino partito correttamente ma attualmente i miei elementi sono ordinanti per data che è fantastico, tuttavia è farlo per tutti gli elementi.Vorrei che il mio codice trovi tutti gli elementi con il nome della classe dei "blog", quindi organizzare per data.Questo è il mio codice finora:
getSortData : {
blogs : function( $elem ) {
return $elem.attr('.blogs'), $elem.find('.date').text();
}
}
. Soluzione
Isotopo fa un ordinamento normale in base al valore restituito della funzione che fornisci.
Quindi è necessario restituire qualcosa che mette gli elementi .blog
in alto ..
Lo sto supponendo che per data solo tu abbia usato $elem.find('.date').text()
Pertanto per modificare questo è possibile aggiungere uno spazio all'inizio per gli elementi generatori di .blog
Prova
getSortData : {
blogs : function( $elem ) {
var isBlog = $elem.hasClass('blogs');
return (isBlog?' ':'') + $elem.find('.date').text();
}
}
.
.
Aggiornamento per commenti
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();
},
.