Autor Zpráva
RoToRo
Profil *
Dobrý den,
potřeboval bych udělat posuvnou mapu - alá Mapy.cz nebo něco takového...

Potřebuji vlastní funkci, takže nechci použít jen nějaké API...

Pokud s tím má někdo zkušenosti, potvrďte nebo opravte mi mojí teroii pls:

-Vytvořím si DIV a nastavím overflow: hidden;
-DIV bude mít obrovskou šířku a výšku.
-Pomocí JS budu dle uživatelova pohybu na jednotlivé souřadnice načítat DIVy s pozadím tedy částmy mapy
-DIV se bude scrollovat pomocí JS, což obstará obsluha fce pro tažení myší

Díky.
blaaablaaa
Profil
RoToRo:
ja bych to udelal tak, ze budes mit div, ve kterem budes odchytavat onmousedown, nasledne pri onmousemove zjistis posun a pri onmouseup a onmouseout uvolnis ... podle zmeny souradnic zjistis kam a o kolik se na mape posunul a napozicujes podle toho dlazdice (prip. nactes nove)
RoToRo
Profil *
blaaablaaa: JJ, tak jsem to myslel, mě šlo spíš o to, jak udělat samotnou mapu, v jedné minulé aplikaci jsem to řešit přes Canvas, ale teď chci aby to fungovalo i na starších prohlížečích...

Jde taky o to když první div umístím jakoby na 0;0 a pak načítám mapu nahoru nebo doleva tak už musím jít do mínusu....nevim, jak to zvládají např. IE....Ale zas je to asi nejvíc přijatelný řešení pro starší prohlížeče.
Chamurappi
Profil
Reaguji na RoToRa:
v jedné minulé aplikaci jsem to řešit přes Canvas
To muselo být pomalé, ne? Překreslovat velký <canvas>

nevim, jak to zvládají např. IE
Pozicování zvládají normálně.

což obstará obsluha fce pro tažení myší
Já postupuji většinou takhle.
RoToRo
Profil *
Chamurappi:
Tak vzhledem k tomu že jsem měl preloadovány obrázky, tak ani ne, docela mě to mile překvapilo...a to jsem přes Canvas tam měl i různé grafy a td......akorát díky IE 8 je to zatím nepoužitelné...


Co se týká mapy, tak udělám to asi přes obrovský div, jak jsem se zmínil na začátku, a do něj si budu načítat další divy přes JS na souřadnice.

A co se týká fce pro obsluhu pohybu, tak Chamurappiho řešení je asi nejlepší...teda uvažuji o tom použít jquery(mouseenter/mouseleave) ale pricip je stejný...
Chamurappi
Profil
Reaguji na RoToRa:
vzhledem k tomu že jsem měl preloadovány obrázky
Nejde o načítání, ale o překreslování velkých ploch.

použít jquery(mouseenter/mouseleave)
K čemu potřebuješ zrovna tyhle události?
RoToRo
Profil *
Chamurappi:
Tak mě to pomalé nepřišlo(cca 200x350px canvas), bohužel živou ukázku ti nepošlu, protože ten projekt je jako celek neveřejný...

JQuery jsem zatim nepoužíval, budu to používat hlavně, abych si ulehčil u AJAXu, a ty události mi přištli jako šikovnější vzhledem k objektům na mapě...

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: