Autor | Zpráva | ||
---|---|---|---|
Martin_ Profil * |
#1 · Zasláno: 24. 3. 2007, 12:17:34
Ahoj,
mám seznam odkazů <ul><li><a></a></li>.....</ul> a občas v něm další vnořený seznam odkazů. Seznamu jsem nastavil třídu. Když kliknu na jakýkoli z těch odkazů, potřeboval bych, aby se otevřel v novém okně. V javascriptu nejsem moc zběhlý, tak bych se chtěl zeptat, jak na to. Zasekl jsem se na tom, že nevím, jak naadresovat odkazy v seznamu s třídou a vnořených seznamech. |
||
Firy Profil |
#2 · Zasláno: 24. 3. 2007, 12:21:15
|
||
Joker Profil |
#3 · Zasláno: 24. 3. 2007, 12:26:04
dyž kliknu na jakýkoli z těch odkazů, potřeboval bych, aby se otevřel v novém okně.
Hodně lidem se tohle nebude líbit. Buď přes target="_blank" anebo přes metodu window.open. Ještě upozorním, že tohle (přes JS) je tzv. pop-up neboli vyskakovací okno a hodně lidí je má blokované, takže místo odkazu uvidí jen hlášku o zablokování vyskakovacího okna. |
||
habendorf Profil |
#4 · Zasláno: 24. 3. 2007, 12:27:31
Zasekl jsem se na tom, že nevím, jak naadresovat odkazy v seznamu s třídou a vnořených seznamech.
Je úplně jedno kde odkazy jsou, o nějakých třídách ani nemluvě. |
||
Martin_ Profil * |
#5 · Zasláno: 24. 3. 2007, 12:32:28
O smyslu toho, co se snažím udělat, bych tady nediskutoval.
Asi jsem se špatně vyjádřil. Na stránce může být více seznamů. Potřebuji, aby se odkazy, jen ze seznamu s určitou třídou, otevíraly do nového okna. |
||
Martin_ Profil * |
#6 · Zasláno: 24. 3. 2007, 12:36:16
Rád bych to vyřešil tak, aby všechen JS byl uložen v externím soubor.
|
||
Joker Profil |
#7 · Zasláno: 24. 3. 2007, 12:46:56 · Upravil/a: Joker
Tak něco takovéhoto:
el.onclick = 'window.open("'+el.href+'");'; el.href=""; Do el se dá prvek odkazu vyhovující příslušné podmínce, celé se to může dát do externího skriptu (ale musí se to dělat až po načtení dokumentu), adresa je normálně v href a fungovalo by to i s vypnutým Javascriptem. |
||
Timy Profil |
#8 · Zasláno: 24. 3. 2007, 12:50:26
A co něco takového?
window.onload=function() { seznamy=document.getElementsByTagName("ul"); for(i=0;i<seznamy.length;i++) { if(seznamy[i].className=="external") { odkazy=seznamy[i].getElementsByTagName("a"); for(j=0;j<odkazy.length;j++) { odkazy[j].target="_blank"; } } } } (funguje pro ul s třídou external a všechny vložené ul - ty už nepotřebují třídu) |
||
Martin_ Profil * |
#9 · Zasláno: 24. 3. 2007, 13:06:46
Díky všem, Timy to vystihl přesně.
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0