Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
[JS]Przycisk wyłączający skrypt
#6
Dobra. Przerobiłem ci pobieżnie ten skrypt, stosując nieco nowocześniejsze metody. Całości nie przerabiałem, bo jestem śmierdzący leń.

Całość kodu wraz z html zamieszczam poniżej. Skopiuj, wklej, odpal. I przeanalizuj czemu zrobiłem to tak, a nie inaczej. I przy okazji obczaj sobie tą lekcję:

http://doman.art.pl/kursjs/kurs/hierarchia/hierarchia_tworzenie_i_usuwanie.html

Kod:
<html>
<body>
<input type="button" id="wlacz" value="+" />
<input type="button" id="wylacz" value="-" />
</body>
<script>
////////////////////////////////////////////////////////////////
// Javascript made by Rasmus - http://www.peters1.dk //
////////////////////////////////////////////////////////////////

var SNOW_Picture = "gwiazdka3d.gif"
var SNOW_no = 15;

var SNOW_browser_IE_NS = (document.body.clientHeight) ? 1 : 0;
var SNOW_browser_MOZ = (self.innerWidth) ? 1 : 0;
var SNOW_browser_IE7 = (document.documentElement.clientHeight) ? 1 : 0;

var SNOW_Time;
var SNOW_dx, SNOW_xp, SNOW_yp;
var SNOW_am, SNOW_stx, SNOW_sty;
var i, SNOW_Browser_Width, SNOW_Browser_Height;

if (SNOW_browser_IE_NS)
{
SNOW_Browser_Width = document.body.clientWidth;
SNOW_Browser_Height = document.body.clientHeight;
}
else if (SNOW_browser_MOZ)
{
SNOW_Browser_Width = self.innerWidth - 20;
SNOW_Browser_Height = self.innerHeight;
}
else if (SNOW_browser_IE7)
{
SNOW_Browser_Width = document.documentElement.clientWidth;
SNOW_Browser_Height = document.documentElement.clientHeight;
}

////////////////////////////////////////////////////////////////
///______________________________ OD TAD ZMIENILEM ____________________
////////////////////////////////////////////////////////////////

var    SNOW_dx = new Array();
var    SNOW_xp = new Array();
var    SNOW_yp = new Array();
var    SNOW_am = new Array();
var    SNOW_stx = new Array();
var    SNOW_sty = new Array();

function snow_create() {
    SNOW_dx = new Array();
    SNOW_xp = new Array();
    SNOW_yp = new Array();
    SNOW_am = new Array();
    SNOW_stx = new Array();
    SNOW_sty = new Array();

    for (i = 0; i < SNOW_no; ++ i)
    {
    SNOW_dx[i] = 0;
    SNOW_xp[i] = Math.random()*(SNOW_Browser_Width-50);
    SNOW_yp[i] = Math.random()*SNOW_Browser_Height;
    SNOW_am[i] = Math.random()*20;
    SNOW_stx[i] = 0.02 + Math.random()/10;
    SNOW_sty[i] = 0.7 + Math.random();
    var platek = document.createElement('div');
        platek.id = 'SNOW_flake' + i;
        platek.style.position = 'absolute';
        platek.style.zIndex = i;
        platek.style.top = '15px';
        platek.style.left = '15px';
    var obrazek = document.createElement('img');
        obrazek.src = SNOW_Picture;
        
    platek.appendChild(obrazek);
    document.getElementsByTagName('body')[0].appendChild(platek);
    }
    SNOW_Weather();
}

function snow_delete() {
    clearTimeout(SNOW_Time);
    
    SNOW_dx = new Array();
    SNOW_xp = new Array();
    SNOW_yp = new Array();
    SNOW_am = new Array();
    SNOW_stx = new Array();
    SNOW_sty = new Array();

    for (i = 0; i < SNOW_no; ++ i)
    {
        var platek = document.getElementById("SNOW_flake"+ i);
        console.log(platek);
        platek.parentNode.removeChild(platek);
    }
}


function SNOW_Weather()
{

    for (i = 0; i < SNOW_no; ++ i)
    {
    SNOW_yp[i] += SNOW_sty[i];

    if (SNOW_yp[i] > SNOW_Browser_Height-50)
    {
    SNOW_xp[i] = Math.random()*(SNOW_Browser_Width-SNOW_am[i]-30);
    SNOW_yp[i] = 0;
    SNOW_stx[i] = 0.02 + Math.random()/10;
    SNOW_sty[i] = 0.7 + Math.random();
    }

    SNOW_dx[i] += SNOW_stx[i];

    document.getElementById("SNOW_flake"+i).style.top=SNOW_yp[i]+"px";
    document.getElementById("SNOW_flake"+i).style.left=SNOW_xp[i] + SNOW_am[i]*Math.sin(SNOW_dx[i])+"px";
    }

    SNOW_Time = setTimeout("SNOW_Weather()", 10);

}

snow_create();

document.getElementById('wlacz').onclick = function() {
    snow_create()
}
document.getElementById('wylacz').onclick = function() {
    snow_delete();
}
</script>
</html>
Odpowiedz


Wiadomości w tym wątku
RE: [JS]Przycisk wyłączający skrypt - przez Kartofelek - 16-12-2010, 17:56

Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  skrypt uruchamiajacy nowy link Arnimarl 1 2,905 26-05-2014, 00:34
Ostatni post: Kartofelek
  Własny przycisk play Olsz4k 1 2,783 28-05-2013, 18:27
Ostatni post: atp
  Poszukiwany skrypt/tutorial na niego Olsz4k 7 5,154 18-03-2013, 19:48
Ostatni post: kornell
  Poszukiwany skrypt/sposób Olsz4k 2 2,739 12-02-2013, 05:50
Ostatni post: Olsz4k
  CSS i skrypt na spadanie śniegu Reconnect 24 17,329 08-12-2012, 23:51
Ostatni post: Reconnect

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl