quarta-feira, 2 de novembro de 2011

Dicas Delphi

Neve ou chuva de objetos no site

Um efeito interessantíssimo onde você poderá fazer chover qualquer tipo de objeto pelo site, assim como neve ou chuvas normais.


Código.


<script language="JavaScript1.2">

<!-- This script is copyright Altan -->

<!-- http://www.altan.hr/snow -->


<!-- Begin

        var no = 15; // numero de flocos de neve

        var speed = 9; // quanto menor o numero, mais rapido o floco se movera

        var snowflake = "endereço da imagem"; // imagem do "floco de neve"


        var ns4up = (document.layers) ? 1 : 0; // detecta o browser do internauta

        var ie4up = (document.all) ? 1 : 0;

        var dx, xp, yp; // variaveis de coordenacao e posicao

        var am, stx, sty; // variaveis de amplitude e passo

        var i, doc_width = 800, doc_height = 600;

        if (ns4up) {

        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; // define variaveis de coordenacao

        xp[i] = Math.random()*(doc_width-50); // define variaveis de posicionamento

        yp[i] = Math.random()*doc_height;

        am[i] = Math.random()*20; // define variaveis de amplitude

        stx[i] = 0.02 + Math.random()/10; // define variaveis de passo

        sty[i] = 0.7 + Math.random(); // define variaveis de passo

        if (ns4up) { // define layers

        if (i == 0) {

        document.write("<layer name="dot"+ i +"" left="15" ");

        document.write("top="15" visibility="show"><img src="");

        document.write(snowflake + "" border="0"></layer>");

        } else {

        document.write("<layer name="dot"+ i +"" left="15" ");

        document.write("top="15" visibility="show"><img src="");

        document.write(snowflake + "" border="0"></layer>");

        }

        } else if (ie4up) {

        if (i == 0) {

        document.write("<div id="dot"+ i +"" style="POSITION: ");

        document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");

        document.write("visible; TOP: 15px; LEFT: 15px;"><img src="");

        document.write(snowflake + "" border="0"></div>");

        } else {

        document.write("<div id="dot"+ i +"" style="POSITION: ");

        document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");

        document.write("visible; TOP: 15px; LEFT: 15px;"><img src="");

        document.write(snowflake + "" border="0"></div>");

        }

        }

        }

        function snowNS() { // função de animação para o Netscape

        for (i = 0; i < no; ++ i) { // para cada floco

        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()", speed);

        }

        function snowIE() { // função de animação para o IE

        for (i = 0; i < no; ++ i) { // para cada floco

        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 = document.body.clientWidth;

        doc_height = document.body.clientHeight;

        }

        dx[i] += stx[i];

        document.all["dot"+i].style.pixelTop = yp[i];

        document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);

        }

        setTimeout("snowIE()", speed);

        }

        if (ns4up) {

        snowNS();

        } else if (ie4up) {

        snowIE();

        }

        // End -->

        </script>

Nenhum comentário:

Postar um comentário