Autor Zpráva
ondruch
Profil
Zdravím.

Potřeboval bych prosím poradit. Nejdříve tedy o co se jedná.

Tvořím nekomerční webové stránky s tématem, které by mohlo zajímat nejen české čtenáře, a tak mám pro své stránky připravenou cizojazyčnou verzi.

S html se kamarádím spíše chvíli a tak budou mé stránky poměrně jednoduché. Prakticky čisté html, kaskádový styl, něco málo JavaScriptu a došel jsem do fáze, kdy vím, že mi to stačí. S jednou věcí si ale nevím rady. Potřeboval bych vytvořit tlačítko, které mě po kliknutí přenese na anglickou verzi té samé stránky.

Na každou stránku vkládám JavaScriptem hlavičku, která obsahuje klikací logo, popisek a vlaječku, která vede na cizojazyčnou verzi. (Prosím nerozebírat, jestli je vlaječka dobrý nápad pro identifikaci jazyka, to už tu bylo :).) Je to řešeno JavaScriptem, protože mi to přišlo jako poměrně snadné a elegantní řešení, jak umístit na stránky (kterých bude velice velice mnoho) tu samou věc a otrocky ji nekopírovat.

Dejme tomu, že mám českou vezri stránek s podsložkou "en", ve které se nachází všechny soubory anglické verze. Prozatím to řeším tak, že tlačítko s vlajkou vede na úvodní stránku dané jazykové mutaci. To je trochu otravné, člověk se pak musí proklikat zpátky. Chtěl bych to jinak, jen si nevím rady, jak dostat do odkazu název té samé stránky a před odkaz vložit "en/".

Kód vypadá nějak takto:
document.write('<h1>obrázkové_klikací_logo</h1>');
document.write('<table><tr><td><p>popisek stránky</p></td><td align="right"><a href="en/index.html">klikací_vlaječka</a></td></tr></table>');

Potřeboval bych tedy do toho odkazu dostat "a href="en/aktualni_stranka.html". Nevíte jak?
Děkuji.


P.S. napadlo mě použít nějaký javascript (skript ve skriptu? jde to?). Něco jako location.href?


P.P.S. Anglické a české verze stránek se jmenují stejně. Příklad: stránka o bleděoranžových pišťuchách se bude jmenovat jak v české, tak anglické verzi bopistuchy.html, takže by opravdu stačilo jen přidat před odkaz to "en/".


NA ŘEŠENÍ JSEM PŘIŠEL není třeba již odpovídat, děkuji.
ondruch
Profil
Kdyby někoho zajímalo řešení, použil jsem
var adresa = location.pathname;
pro načtení "cesty" k souboru do proměnné var v české verzi.

Následně jsem kód rozdělil:
document.write('<h1>obrázkové_klikací_logo</h1>');
document.write('<table><tr><td><p>popisek stránky</p></td><td align="right"><a href="en/');
document.write(adresa);
document.write('">klikací_vlaječka</a></td></tr></table>');
Což vlastně za a href="en/ vloží název stránky a voilá.

V anglické části stránky bylo potřeba naopak umazat to "en/" a tak kód na začátku vypadá jako:
var adresa = location.pathname.substr(3);
v kódu už pak není to "en/" jinak stejné.

Jestli je tato informace pro Vás zbytečná, mohu toto vlákno smazat - stejně si tu povídám sám se sebou.
peta
Profil
var str, adresa;
str = '<h1>obrázkové_klikací_logo</h1>\
\n<table><tr><td><p>popisek stránky</p></td><td align="right"><a href="%%1">klikací_vlaječka</a></td></tr></table>';
var adresa = '12345';
alert(str.replace('%%1', 'en/'+adresa));

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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