Autor | Zpráva | ||
---|---|---|---|
Fanisss Profil |
#1 · Zasláno: 26. 12. 2007, 20:18:36
Mam dotaz, chtel bych pouzit funkci document.getElementById() pro praci s objekty, ale problem je, ze se tato funkce vztahuje na jeden jediny. Pokud mam techto objektu na strance vice (vypisuji je z DB) a do predu nevim, kolik jich bude, netusim, jak to pouzit.
Ukazu na priklade... pouzivam skript, ktery jsem tady nasel, aby se mi po odkliknuti "info" zobrazilo male okno s nejakym textem. Jenze techto "info" tlacitek je na strance mnoho a nevim, jak udelat, aby to fungovalo. <script type="text/javascript" language="JavaScript"><!-- function ap_getObj(name) { if (document.getElementById) return document.getElementById(name).style; else if (document.all) return document.all[name].style; else if (document.layers) return document.layers[name]; } function SkryjTabulku(){ document.getElementById("tabulka1").style.visibility="hidden"; } function ZobrazTabulku(){ document.getElementById("tabulka1").style.visibility="visible"; return false; } function priradfunkce(){ var x = ap_getObj("tabulka1"); document.getElementById("ukaz").onclick = ZobrazTabulku; document.getElementById("kriz1").onclick = SkryjTabulku; } // --> </script> objektu, ktere maji ID "ukaz" je na strance vice, ale pokud jim vsem priradim stejne ID, funguje skript jen pro ten prvni. Dekuji moc... v JS jsem uplny zacatecnik. |
||
Joker Profil |
#2 · Zasláno: 26. 12. 2007, 20:42:11
chtel bych pouzit funkci document.getElementById() pro praci s objekty, ale problem je, ze se tato funkce vztahuje na jeden jediny
Funkce getElementById slouží k výběru jednoho elementu. Na tohle by šlo třeba použít atribut class a napsat si funkci getElementsByClassName- na webu by se měly potulovat příklady. |
||
Gappa Profil |
#3 · Zasláno: 26. 12. 2007, 20:43:57 · Upravil/a: Gappa
1) id na stránce má být jenom jednou
2) na tohle se má použít class, na jejich vybrání pak funkci getElementsByClassName, která není ovšem obsažena v současných (používaných) verzích JS, je tedy nutno se spolehnout na již hotové obsažené v nějakém frameworku, či samostatné funkce. 3) víc jsem to nezkoumal :) EDIT: byl jsem předběhnut :) |
||
Fanisss Profil |
#4 · Zasláno: 26. 12. 2007, 21:25:43
No hlavne se nepoperte, jeste mam dotaz. Kdyz uz se mi to povedlo. Potreboval bych takto skryty/odkryty objekt zobrazovat v miste, kde je mys. TZN. kdyz se odkryje (napr po najeti na nejaky jiny objekt), aby se tabulka zobrazila tam, kde je aktualni pozice mysi.
document.getElementById("tabulka1").style.visibility="hidden"; tak jako existuje nastaveni viditelnosti, existuje i neco pro nastaveni absolutni pozice na souradnici, kde se nachazi mys? Dekuju... |
||
serion Profil |
#5 · Zasláno: 27. 12. 2007, 11:07:49
var IE = document.all?true:false; if (!IE) document.captureEvents(Event.MOUSEMOVE) if(IE) { add_win.top = event.clientY + document.body.scrollTop + 'px'; add_win.left = event.clientX + document.body.scrollLeft + 'px'; } else { add_win.top = e.pageY + 'px'; add_win.left = e.pageX + 'px'; } Z môjho staršieho zdrojáku, kód pre zistenie pozície myši som splašil niekde na nete... chce to len používať Google :P Btw. myslím že tento kód je už out-of-date, takže prehliadač sa bude sťažovať na použitie zastaralých metód, chcelo by to nájsť niečo novšie... |
||
peta Profil |
#6 · Zasláno: 27. 12. 2007, 17:25:07
Fanisss
google.com javascript mouse crossbrowser Urcite si najdi nejnovejsi verzi radeji googlem, uz ve zminenem prikladu vidim par chyb, kvuli kterym ti to nebude fungovat v nekolika rezimech ci prohlizecich. |
||
Časová prodleva: 16 let
|
0