Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/02/2016, 10:52
ph20
 
Fecha de Ingreso: julio-2011
Ubicación: España
Mensajes: 127
Antigüedad: 12 años, 9 meses
Puntos: 2
Clonar y eliminar variables de array

Hola

Con el siguiente script obtengo una imagen aleatoria de entre las que indico en el ImageArray:

Código:
<script type="text/javascript">
<!--
 var imlocation = "";
 var currentdate = 0;
 var image_number = 0;
 function ImageArray (n) {
   this.length = n;
   for (var i =1; i <= n; i++) {
     this[i] = ' '
   }
 }
 image = new ImageArray(3)
 image[0] = 'image1.gif'
 image[1] = 'image2.gif'
 image[2] = 'image3.gif'
 var rand = 60/image.length
 function randomimage() {
 	currentdate = new Date()
 	image_number = currentdate.getSeconds()
 	image_number = Math.floor(image_number/rand)
 	return(image[image_number])
 }
 document.write("<img src='" + imlocation + randomimage()+ "'>");
//-->
</script>
Lo que me gustaría es aumentar o disminuir la probabilidad de que salga cada imagen. Una forma es añadir más líneas de imagen iguales, de manera que si está 10 veces la imagen 2 y una vez la imagen 1 en el ImageArray, hay más posibilidades de que el random vaya a la imagen 2. El inconveniente es que tengo que copiar y pegar cantidad de veces y me pregunto si hay alguna manera más rápida de conseguirlo, por ejemplo añadiendo alguna variable extra en cada línea o alguna forma diferente.


Una segunda cuestión relacionada es, si hay forma de que cuando cierta imagen haya salido en el random se elimine del código, es decir, ya no esté entre las opciones.

Gracias