Topic: Fade (In, OUT)

Labas chebra,

Turiu kreivą (nekreivą) js iš neto, į jį reiktų kažkaip įkišt "Fade" atributą.
Ant JS esu žalesnis nei žaliasis agurkėlis, tai gal kas galėtumėte tinkama linkme nukreipt nuo kurio galo čia pradėt?

taigi, html'e yra js f-ja:

 banner1.add("IMAGE", "espebanner/esp.jpg", 5, 60, 468,"espebanner.html");
 banner1.add("IMAGE", "espebanner/esp2.jpg", 5, 60, 468,"espebanner.html");

Kaip man reiktų su js fade padaryti, kai keičiasi jie du paveikslėliai jog be iškart pasikeistų, o tiesiog kitas po truputį atsirastų?
selector.fadeTo(speed, opacity[, callback] kiek žinau naudojamas, bet visi tie "callback'ai" man jau sunkiau suprantami, gal kas galite kokį pavyzdį?

Ačiū.

Re: Fade (In, OUT)

qutwala wrote:

Labas chebra,

Turiu kreivą (nekreivą) js iš neto, į jį reiktų kažkaip įkišt "Fade" atributą.
Ant JS esu žalesnis nei žaliasis agurkėlis, tai gal kas galėtumėte tinkama linkme nukreipt nuo kurio galo čia pradėt?

taigi, html'e yra js f-ja:

 banner1.add("IMAGE", "espebanner/esp.jpg", 5, 60, 468,"espebanner.html");
 banner1.add("IMAGE", "espebanner/esp2.jpg", 5, 60, 468,"espebanner.html");

Kaip man reiktų su js fade padaryti, kai keičiasi jie du paveikslėliai jog be iškart pasikeistų, o tiesiog kitas po truputį atsirastų?
selector.fadeTo(speed, opacity[, callback] kiek žinau naudojamas, bet visi tie "callback'ai" man jau sunkiau suprantami, gal kas galite kokį pavyzdį?

Ačiū.

Na aš pažiūrėčiau ar tu kartais nenaudoji kokio karkaso, kuris tokią funkciją jau turi.

Antras variantas, pažiūrėčiau ar negalima prijungti kokio jQuery, kuris jau turi tas funcijas ir tik tereiktų jas pridetint prie turimo kodo/objektų.

Na o trečias variantas - susirasti nete patį kodą (aš kažkuriam projekte senai naudojau):

/* fade script */
function makearray(n){
    this.length = n;
    for(var i = 1; i <= n; i++)
        this[i] = 0;
    return this;
}

hexa = new makearray(16);
for(var i = 0; i < 10; i++){
    hexa[i] = i;
}
hexa[10]="a";
hexa[11]="b";
hexa[12]="c";
hexa[13]="d";
hexa[14]="e";
hexa[15]="f";

function hex(i){
    if(i < 0){
        return "00";
    }else if(i >255){
        return "ff";
    }else{
        return "" + hexa[Math.floor(i/16)] + hexa[i%16];
    }
}

function fade(step, div_id){
    div = document.getElementById(div_id);

    if(step > 241){
        div.style.backgroundColor = "#F2F1F1";
        return;
    }
    
    step = step + 10;
    
    hr = hex(step);
    hg = hex(step);
    hb = hex(step);
    
    div.style.backgroundColor = "#"+hr+hg+hb;
    t=setTimeout("fade(" + step + ", '" + div_id + "');", 20);
}
/* end fade script */

Naudojimas:

fade(0, "divo_id");

Re: Fade (In, OUT)

bliam, niekas nesigauna su tais div'ais.
Nes div'ą užkrauną kartą, o skriptą reload'iną kiek img yra.
O bandant su document.write('<div id='id''); nieko iš vis neužkrauna.
Teks skirti ryt dieną mokints JS.

4 (edited by qutwala 2011-02-09 14:30:03)

Re: Fade (In, OUT)

Sumasčiau iš naujo pats persirašyti tą skriptą, nes nifiga nieko ten nenuraukiu. Greičiau bus šitaip, o ne ieškant afrikos ir bandant jį patobulint nieko neraukiant kas viduje.
Taigi, ant lapo esu susirašęs:
1) Turinys į funkciją ---> array, t.y. f-jos argumentais. Naudosiu tokį daiktą šiem paiimti iš "išorės":

   for(var i=0; i<arguments.length; i++)

2) Reikės kažkaip mastyti laiko intervalais, kad imtų argumentus paeiliui. pvz arg[1] 5sec ----> arg[2] 5sec ---> ...
Pradžiai šituos reikia išmastyt.
Iš karto kibau ant:

<html>
<head>
<title>-</title>
<script type="text/javascript">
<!--
        setTimeout('test()', 2000);
        var counter = 0;
       function test()
    {
       for(var i=0; i<arguments.length; i++) {
document.getElementById('test').innerHTML = arguments[i];
}
//document.getElementById('test').innerHTML = "Hello";
 }       

-->
</script>
</head>
<body>
<script type="text/javascript">
test("as","ds","s");
</script>
<p id="test"></p>
</body>
</html>

Kur komentaru pažymėta document.getElementById - veikia, o sukant ciklą argumentam - nė velnio.
Any ideas?
P.S. Jeigu pradedu ne nuo to galo iš kart taisykit.
Rezultate turiu gauti tokį daiktą kur į f-jos argumentus surašęs kažkokias reiškmes man jas viena po kitos rodytų po tam tikro pasirinkto laiko intervalo. Pvz arg[1] praeina 5sec rodo arg[2] ir t.t taip ir sukasi ratu.

Ačiū.

Re: Fade (In, OUT)

qutwala wrote:
       function test()
       for(var i=0; i<arguments.length; i++) {

test("as","ds","s");

Kur komentaru pažymėta document.getElementById - veikia, o sukant ciklą argumentam - nė velnio.

Gal dėlto, kad funkcijos aprašymė nėra aprašyti jokie argumentai? (-;

Re: Fade (In, OUT)

pabandyk perdavineti masyva i funkcija, ne padrika kintamuju kieki :)

 function test(params)
    {
       for(var i=0; i<params.length; i++) {
          document.getElementById('test').innerHTML = params[i];
      }
 }       

test({'a', 'b', 'c'});

Re: Fade (In, OUT)

Ačiū Luiku, ateityje atkreipsim dėmesį. :)