Scramble是一个小型jQuery插件,它使用fisher-yates shuffle算法对一组元素进行加扰。
Fisher-Yates shuffle是一种用于生成有限序列的随机排列的算法。该算法有效地将所有元素放入一顶帽子中;它通过从帽子中随机抽取一个元素来连续地确定下一个元素,直到没有元素保留为止。该算法产生了一个无偏的排列:每个排列的可能性都相等。现代版本的算法是有效的:它所花费的时间与被打乱的项目数量成比例,并将它们打乱到位。详见WIKI。
1.在jQuery之后下载并包含Scramble JavaScript库。
- <script src="/path/to/cdn/jquery.slim.min.js"></script>
- <script src="/path/to/jquery.scramble.js"></script>
2.使用此插件来打乱HTML列表。
- <ul>
- <li>item 1</li>
- <li>item 2</li>
- <li>item 3</li>
- <li>item 4</li>
- <li>item 5</li>
- <li>item 6</li>
- <li>item 7</li>
- <li>item 8</li>
- <li>item 9</li>
- <li>item 10</li>
- </ul>
- var el = $('ul li').scramble();
- $('ul').empty().append(el);
- console.log(el);