Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marcoso

efeito neve

Recommended Posts

Utilizando o script abaixo consigo obter um efeito de neve caindo na index do meu site, só q é um efeito infinito (loop), a neve nunca para de cair, quero modificar o script para que esse efeito aconteça apenas em 10 segundos (num intervalo de tempo definido), alguem consegue?

 

<script language="JavaScript1.2">  // Altere a linha abaixo com a URL da sua imagem da neve.  var snowsrc="imagens/neve.gif"  // Altere a linha abaixo com o número da qtd de neves que aparecerá juntas.  var no = 5;  var ns4up = (document.layers) ? 1 : 0;  // browser sniffer  var ie4up = (document.all) ? 1 : 0;  var ns6up = (document.getElementById&&!document.all) ? 1 : 0;  var dx, xp, yp;	// coordinate and position variables  var am, stx, sty;  // amplitude and step variables  var i, doc_width = 800, doc_height = 600;    if (ns4up||ns6up) {	doc_width = self.innerWidth;	doc_height = self.innerHeight;  } else if (ie4up) {	doc_width = document.body.clientWidth;	doc_height = document.body.clientHeight;  }  dx = new Array();  xp = new Array();  yp = new Array();  am = new Array();  stx = new Array();  sty = new Array();    for (i = 0; i < no; ++ i) {  	dx[i] = 0;						// set coordinate variables	xp[i] = Math.random()*(doc_width-50);  // set position variables	yp[i] = Math.random()*doc_height;	am[i] = Math.random()*20;		 // set amplitude variables	stx[i] = 0.02 + Math.random()/10; // set step variables	sty[i] = 0.7 + Math.random();	 // set step variables	if (ns4up) {					  // set layers	  if (i == 0) {		document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src='"+snowsrc+"' border=\"0\"></layer>");	  } else {		document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src='"+snowsrc+"' border=\"0\"></layer>");	  }	} else if (ie4up||ns6up) {	  if (i == 0) {		document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+snowsrc+"' border=\"0\"></div>");	  } else {		document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+snowsrc+"' border=\"0\"></div>");	  }	}  }    function snowNS() {  // Netscape main animation function	for (i = 0; i < no; ++ i) {  // iterate for every dot	  yp[i] += sty[i];	  if (yp[i] > doc_height-50) {		xp[i] = Math.random()*(doc_width-am[i]-30);		yp[i] = 0;		stx[i] = 0.02 + Math.random()/10;		sty[i] = 0.7 + Math.random();		doc_width = self.innerWidth;		doc_height = self.innerHeight;	  }	  dx[i] += stx[i];	  document.layers["dot"+i].top = yp[i];	  document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);	}	setTimeout("snowNS()", 10);  }  function snowIE_NS6() {  // IE and NS6 main animation function	for (i = 0; i < no; ++ i) {  // iterate for every dot	  yp[i] += sty[i];	  if (yp[i] > doc_height-50) {		xp[i] = Math.random()*(doc_width-am[i]-30);		yp[i] = 0;		stx[i] = 0.02 + Math.random()/10;		sty[i] = 0.7 + Math.random();		doc_width = ns6up?window.innerWidth : document.body.clientWidth;		doc_height = ns6up?window.innerHeight : document.body.clientHeight;	  }	  dx[i] += stx[i];	  if (ie4up){	  document.all["dot"+i].style.pixelTop = yp[i];	  document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);	  }	  else if (ns6up){	  document.getElementById("dot"+i).style.top=yp[i];	  document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i]);	  }   	}	setTimeout("snowIE_NS6()", 10);  }  if (ns4up) {	snowNS();  } else if (ie4up||ns6up) {	snowIE_NS6();  }</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, não sei qual o problema, mas o intuito meu com essa resposta é dar uma sugestão.efeito de neve, já vi muitos em arquivo formato swf.em sites de flash eu já vi um monte disso, se fosse para mim fazer isso, eu tentaria em flash, pois acho que seria mais simples para trabalhar, ou até mesmo eu fazer um efeito como eu quisesse.mas não sei se é o melhor para a tua situação, apenas uma sugestão pois particularmente eu faria assim, e já que você quer enfeitar, lasque um sonzinho junto e impressione teu chefe e teu cliente :) .o único porém, que não sei se é mesmo porém, é que os arquivos swf, ou a tag responsável pela seu embutimento numa página, ocupam o nível mais alto da hierarquia, ou seja, não tem z-index que mande ele para o fundo.flws!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como eu faço para chamar o código acima? body onLoad: "?? ()"

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.