To jest od Jamesa Padolseya. Sprawdź również jego artykuł, aby zapoznać się z czystą techniką JavaScript.
Podłącz
(function($)( $.fn.shuffle = function() ( var allElems = this.get(), getRandom = function(max) ( return Math.floor(Math.random() * max); ), shuffled = $.map(allElems, function()( var random = getRandom(allElems.length), randEl = $(allElems(random)).clone(true)(0); allElems.splice(random, 1); return randEl; )); this.each(function(i)( $(this).replaceWith($(shuffled(i))); )); return $(shuffled); ); ))(jQuery);
Stosowanie
Docelowe elementy, tasowanie połączeń.
$('ul#list li').shuffle();