0

データ値で並べ替えたい要素を含む div があります。

$('div#mainFrame div.element-container').sort(function(a, b)
{
    return parseInt($(a).data('price')) < parseInt($(b).data('price'));
})
.appendTo('div#mainFrame');

完全に正常に動作する chrome/firefox(pc) で試しましたが、Safari では動作せず、Android ブラウザでも動作しません。

これはjsfiddleの例です。

4

1 に答える 1

2

問題の解決策を見つけました。

$('div#mainFrame div.element-container').sort(function(a, b)
{
    return parseInt($(b).data('price')) - parseInt($(a).data('price'));
})
.appendTo('div#mainFrame');

この理由は、ソートがブール値の戻り値ではなく、数値を想定しているためです。

于 2013-06-28T08:52:00.160 に答える