javascript - Sorting and Grouping of Cards in Jquery/Css3 with smooth transition -


help me out!!!! have complex requirement have group of cards, on click have sort same group of cards in asc order. , once have made group cards, each time click sort button, sort cards within group again.

requirement

 <div class="main_div">       <div class="connectedgroup">         <div class="deck">4</div>         <div class="club">3</div>         <div class="deck">2</div>         <div class="spade">9</div>         <div class="deck">5</div>         <div class="club">7</div>         <div class="deck">5</div>         <div class="spade">2</div>         <div class="club">9</div>       </div>     </div> 

out put after sort

  <div class="main_div">       <div class="connectedgroup">         <div class="deck">2</div>         <div class="deck">4</div>         <div class="deck">5</div>       </div>       <div class="connectedgroup">         <div class="spade">2</div>         <div class="spade">9</div>       </div>       <div class="connectedgroup">         <div class="club">3</div>         <div class="club">7</div>         <div class="club">9</div>       </div>     </div> 

waiting valuable suggestions

i wrote down jquery script solve problem,

$("a#order").on("click", function(){     var wrapper = $(".main_div");     var items = $(".connectedgroup div");     var itemshash = {};     wrapper.find("div").remove();      $.each(items, function(){         var itemkind = $(this).attr("class");          if(itemshash[itemkind] == undefined) {             itemshash[itemkind] = [];         }         itemshash[itemkind].push($(this).text());      });      $.each(itemshash, function(item, value){         var sortedlist = itemshash[item].sort();         var cluster = "<div class='connectedgroup'>";          $.each(sortedlist, function(si, va){             cluster += "<div class='"+item+"'>"+ va +"</div>";         });          cluster += "</div>";         wrapper.append(cluster);     }); }); 

you should check http://jsfiddle.net/5rmc8/1/

if using jquery, may out.

you can change "each" statements usual "for" loops, faster.

what did iterate on dom elements , retrieve hash of "kind" (deck, club, spade, etc) array of values , sorted them ascendingly "sort()"

example: hash["deck"] = [2, 4, 5];

then iterate on new hash , create elements needed can seen on line 18 of given example.

hope have helped you


Comments

Popular posts from this blog

c++ - CryptStringToBinary API behavior -

java.util.scanner - How to read and add only numbers to array from a text file -

iphone - Three second countdown in cocos2d -