MyBB Community Forums

Full Version: Copos de nieve
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hola compañeros, en estas fechas me imagino que queda bonito poner unos copitos de nieve en el foro, esto es posible, si es asi me gustaria una pequeña explicacion para torpes como yo y en español, porque lo que leo en ingles no me entero, je je je. Muchas gracias.
Se están analizando varias ideas para estas fiestas. Esta ya esta dentro de ellas. Eso si, no aseguro nada.

Saludos.
Vale compañero, muchas gracias. Si sale algo, en que sección sale, lo digo para ir echandole un vistazo. Un saludo.
Aquí te dejo un código de javascript "comentado" en español para que hagas los cambios que te parezcan.

Lo tienes que poner (el código) después del <body> de la página (o sea que en el headerinclude del foro no lo pongas):

<script type="text/javascript"> 
// CREDITS:
// Snowmaker Copyright (c) 2003 Peter Gehrig. All rights reserved. 
// Distributed by http://www.hypergurl.com 
// Permission given to use the script on webpages provided that this notice remains as is. 
// Por el número de copos (snowflakes) (más de 30 - 40 no se recomienda)
var snowmax=35 
// Pon el color de la nieve. Añade tantos colores como quieras 
var snowcolor=new Array("#aaaacc","#ddddFF","#ccccDD") 
// Pon las fuentes que crean los copos. Añade tantas fuentes como quieras
var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS")
// Pon el simbolo que crea el copo (recomendado:*)
var snowletter="*" 
// Pon la velocdad de hundimiento (valores recomendados de 0.3 a 2) 
var sinkspeed=0.6 
// Pon el tamaño maximo de tus copos
var snowmaxsize=22 
// Pon el tamaño mínimo de tus copos
var snowminsize=8 
// Pon la zona de nevado
// Pon 1 nieve por todos los lados, pon 2 para nieve por la izquierda 
// Pon 3 para nieve en el centro, pon 4 para nieve por la derecha
var snowingzone=3
/////////////////////////////////////////////////////////////////////////// 
// AQUI ACABA LA CONFIGURACION
/////////////////////////////////////////////////////////////////////////// 
// No cambies nada debajo de esta linea
var snow=new Array()
var marginbottom
var marginright
var timer
var i_snow=0
var x_mv=new Array();
var crds=new Array();
var lftrght=new Array();
var browserinfos=navigator.userAgent 
var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
var ns6=document.getElementById&&!document.all
var opera=browserinfos.match(/Opera/)  
var browserok=ie5||ns6||opera

function randommaker(range) {		
	rand=Math.floor(range*Math.random())
    return rand
}

function initsnow() {
	if (ie5 || opera) {
		marginbottom = document.body.clientHeight
		marginright = document.body.clientWidth
	}
	else if (ns6) {
		marginbottom = window.innerHeight
		marginright = window.innerWidth
	}
	var snowsizerange=snowmaxsize-snowminsize
	for (i=0;i<=snowmax;i++) {
		crds[i] = 0;                      
    	lftrght[i] = Math.random()*15;         
    	x_mv[i] = 0.03 + Math.random()/10;
		snow[i]=document.getElementById("s"+i)
		snow[i].style.fontFamily=snowtype[randommaker(snowtype.length)]
		snow[i].size=randommaker(snowsizerange)+snowminsize
		snow[i].style.fontSize=snow[i].size
		snow[i].style.color=snowcolor[randommaker(snowcolor.length)]
		snow[i].sink=sinkspeed*snow[i].size/5
		if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)}
		if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)}
		if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4}
		if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2}
		snow[i].posy=randommaker(2*marginbottom-marginbottom-2*snow[i].size)
		snow[i].style.left=snow[i].posx
		snow[i].style.top=snow[i].posy
	}
	movesnow()
}

function movesnow() {
	for (i=0;i<=snowmax;i++) {
		crds[i] += x_mv[i];
		snow[i].posy+=snow[i].sink
		snow[i].style.left=snow[i].posx+lftrght[i]*Math.sin(crds[i]);
		snow[i].style.top=snow[i].posy
		
		if (snow[i].posy>=marginbottom-2*snow[i].size || parseInt(snow[i].style.left)>(marginright-3*lftrght[i])){
			if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)}
			if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)}
			if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4}
			if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2}
			snow[i].posy=0
		}
	}
	var timer=setTimeout("movesnow()",50)
}

for (i=0;i<=snowmax;i++) {
	document.write("<span id='s"+i+"' style='position:absolute;top:-"+snowmaxsize+"'>"+snowletter+"</span>")
}
if (browserok) {
	window.onload=initsnow
}
</script>

Saludos
Gracias por javascript compañero, pero soy un poco torpe con esto, me podrias dar alguna pistilla mas de donde tengo que poner ese codigo, es que no encuentro eso del <body> de la pagina para ponerlo despues, je je je. Un saludo y gracias.
No hay problema.

Lo tienes que meter a través del Panel de Control del Admin.

Entas en el Admin PC -> Templates -> Modificar -> Seleccionas el Template por defecto de tu Foro -> Expandir -> header (antes metí la pata, es aquí donde hay que ponerlo) -> Editar

y pones todo el código al principio de todo lo demás (que lo primero que haya sea todo el código)

Actualizar Template, vas al foro, le das a la tecla F5 de tu teclado (para actualizar la web) y ya deberías poder ver nevar Wink
Hmm, lo lamento, entendi mal el tema desde el principio, pense que hablabas de copos de nieve en este foro Toungue Sad
@ up :
XD, aunque, estaria bien que le hicieran como en Google, por cada dia festivo, un logo diferente.

Umm, El JavaScript de copos de Nieve es Famoso, aunque en foros no lo usan tanto.
Bueno pues desisto, ya he encontrado donde se pone pero no se ve nevar, je je je. Sera que en foro simpre es verano. Da igual haber si sale algun plugin o algo para torpes como yo. Un saludo y gracias.