在砌体中随机化砖块

Dav*_*ave 11 random jquery jquery-masonry

是否可以随机化JQuery插件砌体中的砖块,以便每次页面加载不同的排列时都会被查看?据我所知,没有随机选项.

谢谢!

小智 9

我在jQuery论坛上找到了答案,并根据我的需要调整了一下.简而言之 - 你在你的masonry()持有者中拉取HTML位并随机化集合,然后你把它放回去:

  $(document).ready(function(){
    var ar = $('#masonry').children();
    ar.sort(function(a,b){
      // Get a random number between 0 and 10
      var temp = parseInt( Math.random()*10 );
      // Get 1 or 0, whether temp is odd or even
      var isOddOrEven = temp%2;
      // Get +1 or -1, whether temp greater or smaller than 5
      var isPosOrNeg = temp>5 ? 1 : -1;
      // Return -1, 0, or +1
      return( isOddOrEven*isPosOrNeg );
    });
    $('#masonry').html(ar);
    $('#masonry').masonry({ 
      columnWidth:220,
      animate: true
    });
  });
Run Code Online (Sandbox Code Playgroud)