Guest User

Untitled

a guest
Apr 22nd, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. <ul id="minhaLista">
  2. <li><img src=... /></li>
  3. <li><img src=... /></li>
  4. ...
  5. </ul>
  6.  
  7. var ul = $("#minhaLista");
  8. var lis = $.makeArray(ul.children().detach()); // Remove todos os lis e converte num array
  9. for ( var i = 0 ; i < lis.length ; i++ ) {
  10. var proxima = Math.floor(Math.random()*(lis.length - i) + i); // Sorteia um
  11. ul.append(lis[proxima]); // Coloca de volta na lista
  12. lis[proxima] = lis[i]; // Retira ele dos "ainda não sorteados"
  13. }
  14.  
  15. var ul = $("#minhaLista");
  16. var lis = ul.children();
  17. var sorteada = Math.floor(Math.random()*lis.length);
  18. for ( var i = 0 ; i < sorteada ; i++ )
  19. lis.eq(i).detach().appendTo(ul);
  20.  
  21. /**
  22. * Shuffle Fisher-Yates algorithm
  23. *
  24. * @see http://sroucheray.org/blog/2009/11/array-sort-should-not-be-used-to-shuffle-an-array/
  25. * @param {Array} array
  26. * @returns {Array}
  27. */
  28. function shuffle (array) {
  29. var i = array.length, j, temp;
  30. if (i === 0) {
  31. return array;
  32. }
  33. while (--i) {
  34. j = Math.floor(Math.random() * (i + 1));
  35. temp = array[i];
  36. array[i] = array[j];
  37. array[j] = temp;
  38. }
  39. return array;
  40. }
  41.  
  42. /**
  43. * Para um elemento pai e um array contendo nomes de arquivos, adiciona randomicamente filhos a este pai.
  44. *
  45. * @param {DOMElement} el Elemento pai. Ex: document.getElementById('id-do-elemento'), jQuery('#id-do-elemento')
  46. * @param {Array} array Array contendo a parte que muda do local da imagem
  47. * @param {String} [base] Base do caminho
  48. * @returns {DOMElement}
  49. */
  50. function randonImgAppendChild (el, array, base) {
  51. var i, base = base || '', img;
  52. array = shuffle(array);
  53.  
  54. for (i = 0; i < array.length; i += 1) {
  55. img = new Image(); // Imagem. Poderia ser qualquer outro elemento
  56. img.src = base + array[i];
  57. el.appendChild(img);
  58. }
  59. return el;
  60. }
  61.  
  62. randonImgAppendChild(document.body, ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg', '10.jpg'], '/pasta/base/');
  63. randonImgAppendChild(document.getElementById('mainbar'), ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg', '10.jpg'], '/pasta/base/');
  64.  
  65. 1.jpg, 2.jpg e assim por diante.
  66.  
  67. var totalCount = 10;
  68. function ChangeIt(){
  69. var num = Math.ceil( Math.random() * totalCount );
  70. document.getElementById("bannerRandom").style.backgroundImage = "url('/images/"+num+".jpg')";
  71. }
  72.  
  73. $randomImg = ['img1.jpg', 'img2.jpg', 'img3.jpg', 'img4.jpg', 'img5.jpg', 'img6.jpg', 'img7.jpg', 'img8.jpg', 'img9.jpg', 'img10.jpg'];
  74. shuffle($randomImg);
  75. echo $randomImg[0];
Add Comment
Please, Sign In to add comment