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

Delay na Rollover ikoni...

[es] :: Google :: Delay na Rollover ikoni...

[ Pregleda: 1224 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

01011011
Avanade
CHICAGO, USA

Član broj: 561
Poruke: 2341
65.216.70.*

ICQ: 45747235
Sajt: www.snailtrail.net


+2 Profil

icon Delay na Rollover ikoni...19.01.2009. u 19:48 - pre 139 meseci
Napravio sam mapu na sajtu klijenta koja dinamicki generise Ikone (pins) od lokacija na google map. E sad kada ljudi predju misem preko tih pinova prikazuju se informacije (adresa, i info sta se tu nalazi)./ E sad recimo da imam na stotine pinova i da je to sve zgusnuto, i sad klijent zeli da kad se uradi rollover preko ikone da bude barem 1 sekunda delay da ne bi odmah se pojavio balon popup. Znaci kada prelazim misom preko mape sa pinovima, trenutno sada se pojavljuje odmah info of tih pinova, a zelio bih da se pojavi jedino kad bi se stajalo vise od jedne sekunde preko pina..
 
Odgovor na temu

marko1981
Marko Nikolic
Beograd

Član broj: 123059
Poruke: 144
87.250.43.*



Profil

icon Re: Delay na Rollover ikoni...19.01.2009. u 21:58 - pre 139 meseci
Ovako ja to radim, doduse u Virtual Earth API-u, ali trebalo bi da je slicna sintaksa u Google Maps API-u:

U JS kodu (kod mene u .html fajlu) napravis jednu globalnu promenljivu

Code:

var selectedPushpin = null;


Dodas handler za onmousemove event (ako vec nisi):

Code:

map.AttachEvent("onmousemove", OnMapMouseMoveHandler);


na dogadjaj onmousemove radim, izmedju ostalog, sledece:

Code:

function OnMapMouseMoveHandler(e)
{
    // ...

    var shape = map.GetShapeByID(e.elementID);
      
    selectedPushpin = shape;
    
    setTimeout("ShowInfoBox()", 1000);

    // ...
}


Metoda ShowInfoBox() je

Code:

function ShowInfoBox() {
   try{
       if (selectedPushpin != null) {
           map.ShowInfoBox(selectedPushpin, selectedPushpin.GetPoints()[0], new VEPixel(-7, -10)); // ovaj VEPixel je zbog centriranja ikonice
           selectedPushpin = null;
       }
   }
   catch (error)
   {
       
   }
}
 
Odgovor na temu

marko1981
Marko Nikolic
Beograd

Član broj: 123059
Poruke: 144
87.250.43.*



Profil

icon Re: Delay na Rollover ikoni...19.01.2009. u 22:20 - pre 139 meseci
Evo jos jedna stvar koja mi se cini da moze biti korisna da ti da neku ideju.

Ako hocu da obradim mouse event u svojoj metodi, ali i da pri tome prekinem sva dalja procesiranja dogadjaja (defaultna), radim na primer ovako:

Code:

map.AttachEvent("onmouseover", OnMapMouseOverHandler);

// ...

function OnMapMouseOverHandler(e) {
   try
   {
     var shape = map.GetShapeByID(e.elementID);
            
     if (shape != null)
     {
        document.getElementById("map").style.cursor = "crosshair";
     }
            
     // returning a value of true stops all further processing of the event
     return true; 
   }
   catch (error)
   {
   
   }
}


Ponovo da naglasim da je ovo VE API.
 
Odgovor na temu

[es] :: Google :: Delay na Rollover ikoni...

[ Pregleda: 1224 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

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