Advertisement
Guest User

Untitled

a guest
Sep 30th, 2012
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Array.prototype.shuffle = function() {
  2.             var s = [];
  3.             while (this.length) s.push(this.splice(Math.random() * this.length, 1)[0]);
  4.             while (s.length) this.push(s.pop());
  5.             return this;
  6.         }
  7.  
  8.         function Numsort (a, b) { return a - b; }
  9.         function calculateBoxes() {
  10.             var res = $(document).width();
  11.             var max_pics_per_row = 10;
  12.             var boxes = new Array();
  13.             var boxes_width = 0;
  14.            
  15.             for (var i = 1; i <= max_pics_per_row; i++) {
  16.                 var rand_width = getRandom(20, 200);
  17.                 boxes.push(rand_width);
  18.                 boxes_width += rand_width;
  19.             }
  20.            
  21.             boxes.sort(Numsort);
  22.             if (boxes_width > res) {
  23.                 var diff = boxes_width - res;
  24.                 boxes[boxes.length() - 1] -= diff;
  25.             } else if (boxes_width < res) {
  26.                 var diff = (res - boxes_width) / 10;
  27.                 for(var i = 0; i < 10; i++) {
  28.                     boxes[i] += diff;
  29.                 }
  30.             }
  31.            
  32.             boxes.shuffle();
  33.             return boxes;
  34.         }
  35.         function getRandom(min, max) {
  36.             if(min > max) { return -1; }
  37.             if(min == max) { return min; }
  38.             var r;
  39.             do { r = Math.random(); } while(r == 1.0);
  40.             return min + parseInt(r * (max-min+1));
  41.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement