Autor | Zpráva | ||
---|---|---|---|
Kadel Profil |
#1 · Zasláno: 18. 6. 2006, 21:09:10
ahoj, potreboval bych javaskriptove vyresit nasledujici:
mam obrazek(nejlip asi input type=image), kliknu na nej a tim predam funkci souradnice na ktere jsem klikl.... chtel bych to bez odeslani formulare(to znamena bez zbytecnyho nacitaci stranky) mohl by nekdo pomoct? diky |
||
Leo Profil |
#2 · Zasláno: 18. 6. 2006, 23:10:54
K temhle informacim nema JavaScript pristup, on kupodivu nema input type="image" v elements daneho formulare, takze musite pracovat s objektem event a ruznymi jeho vlastnostmi, popisujicimi souradnice mysi... Leo
|
||
Kadel Profil |
#3 · Zasláno: 19. 6. 2006, 00:12:07
javascript kupodivu nema input type="image" v elements daneho formulare
aha, to je ta chyba kterou jsem neobjevil :) takze musite pracovat s objektem event ale na jakpsatweb.cz jsem se docetl ze window.event nefunguje v jinde nez v exploreru....cili je to v podstate uz nepouzitelne, neni ve firefoxu neco podobneho? ted me napadaji dve docela schudna reseni, mohl bych to delat pres php(to bych ale musel vzdy nacitat stranku, coz je pri mem zameru nevhodne nebo bych mohl ten obrazek co mam rozrezat na mensi a u tech pouzit onclick(jednalo by se nejspis o rozrezani na 16 obrazku 2 x 16px ke ktere variante by jste se priklaneli? nejake argumenty? dekuji |
||
habendorf Profil |
#4 · Zasláno: 19. 6. 2006, 00:20:30
Kdysi jsem dělal takovou blbůstku, mrkni do kódu na http://www.1-webdesign.cz/pokusy/lupa/index.html
To odchytávání pohybu myši si z toho vytáhni a dále použij jak potřebuješ. |
||
Kadel Profil |
#5 · Zasláno: 19. 6. 2006, 00:31:31
diky moc.... pekna blbustka :)
|
||
peta Profil * |
#6 · Zasláno: 19. 6. 2006, 08:07:07
habendorf S tou mysi je to o dost komplikovanejsi nez tam uvadis...
var mysX,mysY; function myska(e) { var d,b; if (!e) {var e=window.event;} //IE mouse event if (e.pageX || e.pageY) //other {mysX=e.pageX; mysY=e.pageY;} else if (e.clientX || e.clientY) //IE { d=document; d=d.documentElement?d.documentElement:d.body; mysX=e.clientX+d.scrollLeft; mysY=e.clientY+d.scrollTop; } } document.onmousemove=myska; |
||
Kadel Profil |
#7 · Zasláno: 19. 6. 2006, 14:46:46
S tou mysi je to o dost komplikovanejsi nez tam uvadis...
nojo....kdyz se okno zmensi a odroluje tak je to tam potreba...... jednu vec tu ale dost dobre nechapu..... proc se v radku document.onmousemove=myska; nepisou zavorky jako normalne u funkce? |
||
Leo Profil |
#8 · Zasláno: 19. 6. 2006, 15:06:08
"nepisou zavorky jako normalne u funkce?"
Protoze to neni VOLANI fce (pak by tam byly ty zavorky). Leo |
||
Oswald Profil |
#9 · Zasláno: 19. 6. 2006, 15:06:26
Kadel
Protože se do "document.onmousemove" ukládá odkaz na funkci samotnou (která se zavolá až při události), ne její návratovou hodnotu. Zkus si alert(myska) a alert(myska()) a uvidíš ten rozdíl. |
||
peta Profil * |
#10 · Zasláno: 19. 6. 2006, 16:16:50
Kadel
V podstate to lze napsat myska(), jenze, pak nedostane FF nevratovou hodnotu v function myska(e) , konkretne to "e" a tim padem nedokaze nic udelat. V IE to fungovat bude, protoze pro IE beres souradnice z window.event. To ostatni uz bylo receno, tomu ani ja moc nerozumim. Proste jsem to zkusil tak i onak a zjistoval, proc ot neslo a ponechal si funkcni verzi :) |
||
Kadel Profil |
#11 · Zasláno: 20. 6. 2006, 14:23:10
d=document; d=d.documentElement?d.documentElement:d.body;
tohle mi v exploreru nefungovalo spravne... nasel sem funkci ktera spravne urci var d function ietruebody(){ return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body } pak staci zaspi var d=ietruebody(); zdroj: http://interval.cz/clanky/nahled-dokumentu-pri-prejeti-odkazu-mysi-jav ascriptem/ |
||
Leo Profil |
#12 · Zasláno: 20. 6. 2006, 14:29:09
Rekl bych, ze s document.documentElement by v dnesnich verzich prohlizecu nemel byt problem... Leo
|
||
Kadel Profil |
#13 · Zasláno: 20. 6. 2006, 15:44:39
Rekl bych, ze s document.documentElement by v dnesnich verzich prohlizecu nemel byt problem... Leo
nevim....mozna sem mel chybu nekde jinde ale s document.documentElement mi to v IE6 nebezelo a kdyz sem dal to co jsem psal, tak to bezelo.....takhle do hloubky jsem radsi javascripty nestudoval protoze me vylozene stve jak nic v exploreru nebezi. Navic mam doma jen OS freeBSD takze ani nemam IE doma..... doufam ze tudle blbost brzo dodelam abych nemusel trpet ve skole (mame tu hrozny sunky :) ) |
||
Leo Profil |
#14 · Zasláno: 20. 6. 2006, 16:27:21
"s document.documentElement mi to v IE6 nebezelo"
Zvlastni, me to beha... Leo |
||
peta Profil * |
#15 · Zasláno: 20. 6. 2006, 16:47:58
Kadel
xatchat.sk Ale je treba se nalogovat na xatchat.sk/....portal/ a po prejeti prezdivky mysi se zobrazi informace. Podle mne to beha uplne bez problemu. Pravdepodobne jsi neco spatne zkopiroval. ja tam mam var uplne na zacatku. |
||
peta Profil * |
#16 · Zasláno: 20. 6. 2006, 16:51:09
Kadel A propo, kdyz uz se davas interval a DynamicDrive, vsimni si, jaky komplikovany script tam pouzivaji pro mysicku. Verim, ze to ma nejaky dobry duvod...
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0