fsanchezdsgn
Usuario habitual
Usuario habitual

Buenas a todos:

Estoy trabajando sobre una web en la que la jerarquía se refuerza mediante el uso del color. Hay 3 secciones y cada una de ellas responde a un color diferente. En cada una, utilizo dicho color para los hovers, destacados y demás. La idea es que en el index se utilize uno de esos 3 colores de forma aleatoria. Lo he intentando con el Math.ramdom pero me devuelve valores que no se utilizar. Simplemente quiero que una variable elija, de forma aleatoria, un número íntegro del 1 al 3, es decir, el 1, el 2 o el 3. Y luego en función a eso con condicionales aplicar un color u otro. Si alguien puede ayudarme con el Math.ramdom o ve una alternativa que me la diga pls...

Gracias y un saludo!


fsanchezdsgn
Usuario habitual
Usuario habitual

SOLUCIONADO!!

Math.round(Math.random()*(3-1)+1)

Hackrevox
Usuario Novato
Usuario Novato

Hola, me sucede algo similar, y necesito ayuda urgente, porque ando trabajando con una web :z) El caso es el siguiente: tengo un total de 3 etiquetas div, que no sé si añadiré más, pero por ahora me centro en las 3. Dentro de cada una de ellas necesito que aparezcan de forma aleatoria un número aproximado de 5 frases, una por cada vez que cargue. En total 15 frases. Estoy trabajando con el siguiente código:

(dentro de head)

<script type="text/javascript">
var Quotation=new Array()

Quotation[0] = "Frase 1.";
Quotation[1] = "Frase 2.";
Quotation[2] = "Frase 3";
Quotation[3] = "Frase 4.";
Quotation[4] = "Frase 5."; 
Quotation[5] = "Frase 6.";
Quotation[6] = "Frase 7.";
Quotation[7] = "Frase 8";
Quotation[8] = "Frase 9.";
Quotation[9] = "Frase 10."; 
Quotation[10] = "Frase 11.";
Quotation[11] = "Frase 12.";
Quotation[12] = "Frase 13";
Quotation[13] = "Frase 14.";
Quotation[14] = "Frase 15.";
var Q = Quotation.length; 

function showQuotation() {var whichQuotation=Math.round(Math.random()*(5-1));
document.write(Quotation[whichQuotation]);} 

function showQuotation2() {var whichQuotation=Math.round(Math.random()*(11-1));
document.write(Quotation[whichQuotation]);} 

function showQuotation3() {var whichQuotation=Math.round(Math.random()*(15-5));
document.write(Quotation[whichQuotation]);} 

</script>

(dentro de cada etiqueta div)

<script type="text/javascript">  showQuotation(); </script>(con el número de la función elegida después de showQuotation)

El problema es que no sé manejar bien la variable random, por lo que no sé como hacer que sólo aparezcan las frases que yo quiero. Sería algo como que apareciese en la div1 frases aleatorias de la 1 a la 5, en la div2 de la 6 a la 10, y en la div3 de la 11 a la 15, pero sólo esas. Espero haberme explicado bien, y obtener un poco de ayuda, porque me veo con el agua al cuello, thnks!!! :lo):4)

Avatar Image
Moderador del foro
Moderador del foro

Incluye esta función en tu script:

function aleatorio(inferior,superior){
    numPosibilidades = superior - inferior
    aleat = Math.random() * numPosibilidades
    aleat = Math.floor(aleat)
    return parseInt(inferior) + aleat
}

Y la función ShowQuotation sería:

function showQuotation(){document.write(Quotation[aleatorio(0,5)]);}
 function showQuotation2(){document.write(Quotation[aleatorio(5,10)]);}
 function showQuotation3(){document.write(Quotation[aleatorio(10,15)]);}
Hackrevox
Usuario Novato
Usuario Novato

Jo, ha funcionado a la perfección!! No sé cómo agradecertelo, de veras... Es genial! Eres un crack! ;):4)

Hackrevox
Usuario Novato
Usuario Novato

Jo, lo que no estoy muy seguro ahora es si le puedo dar formato a ese texto y cómo debería hacerlo :8]:4)

Avatar Image
Moderador del foro
Moderador del foro

¿A qué te refieres con dar formato al texto?

Tienes un array, cada uno con un valor, y la función showQuotation imprime el valor mediante el document.write(); ¿Qué más debería hacer la función?

Hackrevox
Usuario Novato
Usuario Novato

Me refería a lo que hago con el resto de los textos en la página, darles formato con css: el tamaño, la alineación, etc... o se supone que eso se lo proporciona la div en la que vaya? Lo siento si son preguntas un poco de perogrullo, pero aunque controlo, pero estoy empezando y patino un poco aún :ty):4)

Avatar Image
@man / @woman
@man / @woman

A los estilos siempre conviene definirlos en un CSS, y deja para JS cuando necesites hacer cambios de estilos dinámicos (pero no re-definiendo propiedades sino cambiando la clase al elemento).

Hackrevox
Usuario Novato
Usuario Novato

Gracias a todos por vuestra ayuda! :-/  :4)

Avatar Image
Usuario habitual
Usuario habitual

Buscaba exactamente lo mismo, un problema que me quitais.

Saludos,

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
No se han encontrado temas similares