Autor | Zpráva | ||
---|---|---|---|
CZghost Profil |
V návodech na JPW jsou pouze základy JS a základní objektové situace, větvení tam sice je, ale jen letmo popsané, ty pokročilejší techniky tam chybí úplně.
Potřeboval bych zjistit, zda webová adresa není absolutní. Pokud není, odkazu se připíše událost onclick, která vyplivne oznamovací okýnko a zruší klikatelnost (stránka neexistuje). Druhou možnost popíšu v tématu pro dvouřádkové menu. Edit: Založeno |
||
Časová prodleva: 8 dní
|
|||
peta Profil |
Fajn, co mas hotove? Co jsi k tematu nasel googlem a neni ti jasne? Tema, udelejte za mne se jmenuje Prace a zakazky, jestli ocekavas hotovy vysledek?
Podle jakych pravidel chces zjistit, ze je adresa a kde, absolutni? a = document.getElementsByTagName - vybere za stranky vsechny tagy A a[0] - tag nula a[0].href - url adresa v tagu 0 Jak zjistit, jestli je to adresa externi nebo interni? Zkusil bych hledat na zacatku v retezce http , ftp nebo jit na to opacne, hledat ./ nebo ../ a nebo cokoliv/ , ktere se neshoduje s cokoliv:/ (pro http://) . Funkce str.indexOf, reg.match(str). Mel bys tez uvazovat, ze nekdo muze mit adresar http/ nebo ftp/ .
|
||
CZghost Profil |
#3 · Zasláno: 17. 9. 2013, 14:28:58
peta:
Téměř hotový mám design a kontext stránky. Stránka má být ukázka nového vzhledu webu školy. Zjišťovat bych chtěl na všech odkazech webu, přičemž se mi nechce pořád psát jeden a ten samý příkaz pro každý odkaz. Jde to nějak úsporně (například přes while)? Asi nemusím říkat, že absolutní adresa začíná http:// (nebo https:// pro šifrované spojení)... Šlo by na to v pohodě použít regulárního výrazu?
Akce by měla být taková, že na relativním odkazu se připíše skript zakazující přechod na stránku (neexistuje). Ještě vypíše hlášku o nepřístupnosti odkazu... |
||
_es Profil |
#4 · Zasláno: 17. 9. 2013, 15:17:24
CZghost:
Málo zrozumiteľne si popísal, čo chceš a z toho zrozumiteľného - prečo a čo vlastne riešiš v JS? To nevieš snáď už popredu, aké odkazy si tam sám dal? Prečo by mali byť „neabsolútne“ odkazy neplatné, viď URL » Relativní adresování. |
||
CZghost Profil |
#5 · Zasláno: 17. 9. 2013, 15:41:11
_es:
Protože odkazy vedou na neexistující soubory, které jsou pro ukázku vzhledu nepodstatné. Odkazy by tam ale měly být pro plnohodnotnou ukázku výsledné grafiky (odkazy se zabarvují, mění svůj styl při přejíždění)... To zrušení klikatelnosti má zabránit nevzhledné stránce 404, která ne každého úplně potěší... Když tak můžu vzít vzhled a napsat vlastní chybovku 404, která bude v souladu se vzhledem webu. Tu ale nebude možné zobrazit při kliknutí na odkaz vedoucí na neexistující soubor nebo adresář. peta: Dodatečně děkuju za nabídku funkcí, podívám se na ně... |
||
_es Profil |
#6 · Zasláno: 17. 9. 2013, 16:12:29
CZghost:
„Tu ale nebude možné zobrazit při kliknutí na odkaz vedoucí na neexistující soubor nebo adresář.“ Ale veď to predsa práve jej účel: ErrorDocument 404. |
||
CZghost Profil |
#7 · Zasláno: 17. 9. 2013, 18:47:50
_es:
Stránky nebudou na serveru. Tudíž nebude chybovka fungovat tak, jak by fungovala na serveru... |
||
Chamurappi Profil |
Reaguji na CZghosta:
„Stránky nebudou na serveru.“ Takže nepotřebuješ rozeznávat absolutní/relativní adresy (což moc pohodlně nejde), stačí ti zablokovat odkazy vedoucí na protokol file: , je to tak?
Zkusil bych tedy něco jako tohle: <body onclick="if((event.srcElement || event.target).protocol == 'file:') return false;"> Jinak do ukázek, u nichž zatím není jasné, kam budou odkazovat, se obvykle odkazům dává vycpávací href="#" nebo href="javascript:;" .
|
||
CZghost Profil |
#9 · Zasláno: 18. 9. 2013, 08:41:56
Chamurappi:
Tak o téhle funkci jsem neměl ani tušení. Moc děkuju, nastuduju si ten event target a rozhodnu se, zda využiju i ten srcElement... Potom napíšu, zda jsem si vybral to či ono |
||
Amunak Profil |
#10 · Zasláno: 18. 9. 2013, 08:51:08
CZghost:
Použij to pokud možno přesně tak, jak to Chamurappi napsal. Zápisem (event.srcElement || event.target).protocol dosáhneš toho, že ten skript podporuje jak prohlížeče, co znají event.srcElement (většina + IE), tak ty, které znají event.target (většina + ostatní).
|
||
Chamurappi Profil |
#11 · Zasláno: 18. 9. 2013, 13:04:29
Reaguji na CZghosta:
„nastuduju si ten event target a rozhodnu se, zda využiju i ten srcElement“ Zajímavé :-) To logické „nebo“ nebylo určené pro tebe, ale pro prohlížeč. |
||
CZghost Profil |
#12 · Zasláno: 20. 9. 2013, 16:03:31
Amunak & Chamurappi:
Dobrá. Vyzkoušeno, funguje to... Teď jenom, jestli načte také přímo vložené obrázky (CSS pozadí funguje bez problémů)... |
||
Časová prodleva: 11 let
|
0