Skip to main content

HTML DOM 요소를 섞어 주는 플러그인?

jquery를 이용하여 객체를 랜덤으로 출력할 일이 있어서 만들어 보았습니다.

(만든게 아닌가 -_- 어딘가 스텍에서 따온건가 …  가물가물하군욥… 어쨌든 잘 쓰고 있습니다.)

 

당연한 이야기지만 jquery를 불러놓고 써야합니다.

 

(function($){

    $.fn.DShuffle = 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);

 

사용법은….

$('ul#list li').shuffle();

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.