Rever rekkefølgen av elementer

stemmer
1

Den følgende kode ordner elementer ved attributten mengde. Hvordan kan jeg endre denne koden slik at elementene vil bli reversert? Takk.

var parent = $('#items');
var children = $('a', parent);
children.sort(function(a, b) {
    return parseInt($(a).attr('amount')) - parseInt($(b).attr('amount'));
})

$.each(children, function(i, child) {
    parent.append(child);
});
Publisert på 06/11/2009 klokken 16:32
kilden bruker
På andre språk...                            


4 svar

stemmer
1

Bruk foranstilte i stedet for append?

http://docs.jquery.com/Manipulation/prepend#content

Svarte 06/11/2009 kl. 16:33
kilden bruker

stemmer
2

Endre rekkefølgen på verdiene du sammenligner ( b-ai stedet for a-b):

var children = $('a', parent).sort(function(a, b) {
    return parseInt($(b).attr('amount'), 10) - parseInt($(a).attr('amount'), 10);
});
Svarte 06/11/2009 kl. 16:34
kilden bruker

stemmer
0
children.sort(function(a, b) {
    return parseInt($(a).attr('amount')) < parseInt($(b).attr('amount')) ? 0 : 1;
});
Svarte 06/11/2009 kl. 16:35
kilden bruker

stemmer
1

Jeg har brukt denne teknikken. Den er ideell for små samlinger.

jQuery.fn.reverse = function() {
   return this.pushStack(this.get().reverse(), arguments);
};

var r = $('.class').reverse();
Svarte 06/11/2009 kl. 16:35
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more