Autor Zpráva
kris
Profil *
Ahoj,začínám tvořit html stránky,a snažím se aby byly validní.Sehnal jsem si script,který bych na stránkách chtěl použít,ale po kontrole validity mi vyhodí několik chyb,ale já nevím jak je opravit.Poradíte mi někdo?Odkaz je:http://obec-mikulov.cz/admin/kris/x/
Díky za rady
OBr
Profil
Zkus ve scriptu rozdělovat tagy pomocí '+'
Takže třeba
document.write('<div id="imgs" style="position:absolute;"> </div>')

má vypadat asi takhle
document.write('<di'+'v id="imgs" style="position:absolute;"> </d'+'iv>')
Chamurappi
Profil
I přesto, že řešení je snadné: Neřeš.

Tohle je problém, který HTML podědilo ze SGML (obecného metajazyku definujícího pravidla rozebírání). Validátor HTML se pozastavuje nad každou ukončovací značkou uvnitř elementu, jehož obsahem nesmí být žádný jiný element (u počátečních značek ovšem mlčí). Prohlížeče zde postupují rozumněji: čekají na konec právě toho elementu, který byl započat.
Kód, který nemůže způsobit chybu, nepovažuji za chybný. Doporučuji zaujmout stejný postoj. Proč se za každou cenu podřizovat nástroji, jehož jedinou funkcí je upozorňování na rizikové konstrukce a jehož výsledky zdaleka neodpovídají realitě?
kris
Profil *
Tak jo,nechám to tak.Ale zajímalo by mně ,jestli tenhle script jde dát do externího souboru,a pak bych ho jen přivolal?
Chamurappi
Profil
Jde. Jako prakticky každý skript.
kris
Profil *
jenže když to dám do externího souboru,a pak tam dám do zdrojáku:


<script src="foto.js"></script>


Tak mi to nic nedělá.
Miloš
Profil
Je foto.js ve stejném adresáři?
Chamurappi
Profil
Reaguji na Miloše:
<script type="text/javascript" src="foto.js"></script>
Neuvedený type="text/javascript" není chybou. Problém musí být jinde.
Pachollini
Profil
Pokud používáš document.write, musel bys to dát do nějaké funkce a externí skript připojit v hlavičce. Tu funkci bys pak volal v těle dokumentu.
Chamurappi
Profil
Reaguji na Pacholliniho:
Nechápu. Skriptům je přeci úplně jedno, jestli jsou v hlavičce, ne?
Miloš
Profil
Chamurappi
Zareagovals ještě během mé opravy – přehlédnul jsem, že tam kris to src má.
Pachollini
Profil
No mám za to, že pokud budeš mít externí skript v těle dokumentu, vykreslování stránky nepočká, až se načte a tedy nebude fungovat document.write(). Ale možná se mýlím, tyhle věci vůbec nepoužívám ;-)
Chamurappi
Profil
Reaguji na Pacholliniho:
pokud budeš mít externí skript v těle dokumentu, vykreslování stránky nepočká, až se načte
Nikoliv. Metoda document.write() funguje v jakémkoliv místě dokumentu. Bez ohledu na umístění skriptu.
kris
Profil *
Jo jo foto.js mám ve stejném adresáři
Toto téma je uzamčeno. Odpověď nelze zaslat.

0