Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/10/2010, 16:13
hernandavidgomez
 
Fecha de Ingreso: junio-2009
Mensajes: 33
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Rotar imagenes aleatoriamente sin repetir!

gracias por el aporte, ya lo pude solucionar por si a alguien le interesa
saludos, y no se repite!

Código HTML:
Ver original
  1.   <head>
  2.     <title>
  3.       Prueba de rotaci&oacute;n aleatoria de im&aacute;genes
  4.     </title>
  5.  
  6.     <script type="text/javascript">
  7.       <!--
  8.  
  9. // Conjunto de nombres de las imagenes a rotar
  10. imagenes = new Array (
  11.    'imagenes/Albania.png',
  12.     'imagenes/Andorra.png',
  13.     'imagenes/Algeria.png',
  14.     'imagenes/Argentina.png',
  15.     'imagenes/Aruba.png',
  16.     'imagenes/Brazil.png',
  17.     'imagenes/Cameroon.png',
  18.     'imagenes/China.png',
  19.     'imagenes/Chile.png',
  20.     'imagenes/Congo.png',
  21.     'imagenes/Canada.png',
  22.     'imagenes/Afghanistan.png',
  23.     'imagenes/Angola.png',
  24.     'imagenes/Bosnian.png',
  25.     'imagenes/Cambodia.png',
  26.     'imagenes/Colombia.png');
  27.  
  28.  
  29. // Tiempo de espera entre imagenes (en segundos)
  30. espera = 3;
  31.  
  32. // Referencia a la imagen actual
  33. imagen_actual = 0;
  34.  
  35.  
  36.  
  37. function cambiar_imagen ()
  38. {   var i=0;
  39.     var uti= new Array;
  40.     for(i=0;i<imagenes.length;i++)
  41.     {
  42.         ima = Math.floor (Math.random () * imagenes.length);
  43.         uti[i]=ima;
  44.         //alert(uti[0]);
  45.         var j = 0;
  46.             for( j=0; j<i; j++)
  47.             {
  48.             //alert(uti[j]);
  49.             if(i != j)
  50.            
  51.                 {
  52.                 //alert(uti[i]);
  53.                 //alert(uti[0]);
  54.                     if(uti[i] == uti[j])
  55.                         {
  56.                             while(uti[i] == uti[j])
  57.                                 {
  58.                                     ima = Math.floor (Math.random () * imagenes.length);
  59.                                     uti[i]=ima;
  60.                                     //alert('hola');
  61.                                     for(k=0; k<i; k++)
  62.                                         {
  63.                                             if(uti[i] == uti[k])
  64.                                                 {
  65.                                                     while(uti[i] == uti[k])
  66.                                                     {
  67.                                                     ima = Math.floor (Math.random () * imagenes.length);
  68.                                                     uti[i]=ima;
  69.                                                     }
  70.                                                 }
  71.                                         }
  72.                                 }
  73.                         }
  74.                
  75.                 }
  76.            
  77.             }
  78.                
  79.            
  80.        
  81.         document.getElementById('div'+i).innerHTML="<img src='"+imagenes[ima]+"' style='heigth:128px; width:128px; cursor:pointer;' />";
  82.     }
  83.  
  84.    if (imagen_actual >= imagenes.length)
  85.        imagen_actual = 0;
  86.  
  87.    // Llamar esta misma funcion cada cierto tiempo
  88.    self.setTimeout ('cambiar_imagen()', espera * 1000);
  89. }
  90.  
  91.    </script>
  92.  </head>
  93.  <body onLoad="cambiar_imagen()">
  94.  <div id="div0" style="float:left"></div>
  95.  <div id="div1" style="float:left"></div>
  96.  <div id="div2" style="float:left"></div>
  97.  <div id="div3" style="float:left"></div><br /><br /><br /><br /><br /><br /><br />
  98.  <div id="div4" style="float:left"></div>
  99.  <div id="div5" style="float:left"></div>
  100.  <div id="div6" style="float:left"></div>
  101.  <div id="div7" style="float:left"></div><br /><br /><br /><br /><br /><br /><br />
  102.  <div id="div8" style="float:left"></div>
  103.  <div id="div9" style="float:left"></div>
  104.  <div id="div10" style="float:left"></div>
  105.  <div id="div11" style="float:left"></div><br /><br /><br /><br /><br /><br /><br />
  106.  <div id="div12" style="float:left"></div>
  107.  <div id="div13" style="float:left"></div>
  108.  <div id="div14" style="float:left"></div>
  109.  <div id="div15" style="float:left"></div><br /><br /><br /><br /><br /><br /><br />
  110.    
  111.  </body>
  112. </html>