Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

kako znati odakle je doshao mish - action script

[es] :: Flash :: kako znati odakle je doshao mish - action script

[ Pregleda: 1684 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Schmidt
RHCE

Član broj: 80784
Poruke: 647
*.poen.net.



+10 Profil

icon kako znati odakle je doshao mish - action script28.11.2007. u 15:46 - pre 200 meseci
Dakle, problem je sledecji:
U gornjih 10 piksela vidljivog dijela prezentacije hvatam poziciju misha, ako je mish po y koordinatama unutar tih 10 piksela aktiviram flash animaciju.
Medjutim, problem je shto mi treba aktivacija sa dodatna dva uslova:
1. ako mish dolazi odozgo (od toolbara i addressbara) ne treba da se aktivira animacija
2. ako mish dolazi odozdo (sa sadrzhaja) onda treba da se aktivira animacija

Cilj: ako posjetilac zheli da napusti moju stranicu (zheli da ukuca novu adresu u addressbar, zheli da klikne na back ili bilo shta slichno) aktiviracje se animacija.

Ovo mi je prva action skripta, pa vas molim za strpljenje :)
 
Odgovor na temu

Schmidt
RHCE

Član broj: 80784
Poruke: 647
*.poen.net.



+10 Profil

icon Re: kako znati odakle je doshao mish - action script28.11.2007. u 20:45 - pre 200 meseci
Ok, upotrebio sam watchcallback funkciju, poredjenjem oldval i newval mogu znati da li se mish krecje prema gore ili prema dole. Medjutim sporo je, i ako se brzhe trzne mishem i predje preko gornjih 10 piksela koje hvatam mozhe se desiti da se animacija ne pokrene. Ima li neki brzhi nachin uzimanja koordinata misha? Inache, zbog toga shto je flash u skrivenom layeru, koordinate shaljem javascriptom, pa je mozhda i to razlog shto je sporije. Ne poznajem relacije izmedju objekata u flashu, ne znam da li bi se objektnim programiranjem moglo brzhe pokupiti varijable iz javascripte. Da li postoji event.mouseposition ili neshto slichno?
 
Odgovor na temu

shedvel
Jobless Couch Bum
Kragujevac

Član broj: 70014
Poruke: 114
*.dynamic.sbb.co.yu.



Profil

icon Re: kako znati odakle je doshao mish - action script28.11.2007. u 21:00 - pre 200 meseci
Jako interesantna ideja za zadrzavanje korisnika koji bi da odu sa sajta.
Uvek mozes da im prikazes gomilu macica u korpici sa cvecem (trademark), ili neku paranoicnu poruku tipa cik izadjite sa sajta... pain...lot's of painnn... salim se naravno.

Back on topic, ovo mozes uraditi samo u AS3 obzirom da AS1,2 nema klasu za detektovanje napustanja stage-a ili ili flash player prozora.

Code:

import flash.events.Event;
import flash.events.MouseEvent;
import flash.ui.Mouse;

stage.addEventListener(Event.MOUSE_LEAVE, pobezeKorisnik)

function pobezeKorisnik (e:Event):void {
    trace("dont go, pleaseee dont go... pain...lot's of painnn...")
}



Sve najbolje
"Treba li da se smejem jer smesni su, . . .
. . . ili da placem jer je to sve sto jesu? "
 
Odgovor na temu

Schmidt
RHCE

Član broj: 80784
Poruke: 647
*.poen.net.



+10 Profil

icon Re: kako znati odakle je doshao mish - action script28.11.2007. u 22:29 - pre 200 meseci
Problem je shto koordinate shaljem javascriptom, tako da pokrivam cijelu stranicu, a ne samo podruchje flash (mouse leave vazhi samo za podruchje flasha?).
Dakle, meni treba event na ponashanje varijable. Ako ta varijabla opada od nekog vecjeg broja prema nuli i dodje do nule aktivira se flash. Ako ide od nule prema nekoj vecjoj vrijednosti onda se ne desi nishta (jer je to vjerovatno ulazak misha na stranicu)... Izvodivo? Gore sam naveo da sam radio sa watchcallback ali je sporo, preletish mishonjom jako brzo i flash ne uhvati event...
 
Odgovor na temu

Schmidt
RHCE

Član broj: 80784
Poruke: 647
*.poen.net.



+10 Profil

icon Re: kako znati odakle je doshao mish - action script28.11.2007. u 22:34 - pre 200 meseci
Evo primjer koji mi radi posao:

Code:

_global.fleg = 1;
watchCallback = function (id,oldval,newval):String {
    if (newval < 10)
        {
        if (fleg == 1)
        {
            if (oldval > newval)
            {
                getURL("javascript:showMovie();");
                _root.animacija.gotoAndPlay (2);
                fleg = 0;
            }
        }
    }
    return newval;
};
_root.watch("tempY",watchCallback);
_root.watch("fleg",watchCallback);


tempY i fleg setujem iz javascripte, jedan je za y koordinatu misha, a drugi je fleg da je flash vecj odradio animaciju i da ga ne treba pokretati ponovo ako se ispuni uslov za tempY.

Ako mozhe bolje bio bih zahvalan na savjetu, ovo sam uspio nakon shto sam prochitao neshto malo dokumentacije. Imam neki portable flash pa nemam help ni primjere...
 
Odgovor na temu

[es] :: Flash :: kako znati odakle je doshao mish - action script

[ Pregleda: 1684 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.