Пример с использованием
jQuery:
$('li[sort]').sort(function (a, b) {
return parseInt($(a).attr('sort'), 10) < parseInt($(b).attr('sort'), 10) ? -1: 1;
}).appendTo('ul');
Посмотреть результат.
И да, для пользовательских атрибутов лучше использовать префикс
data-, чтобы все соответствовало стандартам :-)
Вот еще
пример, с изменением направления сортировки.