Autor Zpráva
WinKrak
Profil *
Ahoj, potřebuji v javascriptu zapsat kousek stylu, ale nedaří se mi to, vyhazuje mi to tuto chybu:
unexpected unterminated string, expecting end of file unexpected '");'
Začíná to již u tagu <style>:
document.write("<style>"); // to tučné vyhazuje chybu.
díky.
Str4wberry
Profil
V uvedené ukázce nevidím problém.
TomasJ
Profil
Tohle mi píše, když v apostrofech použiji zpětné lomítko:
document.write('<button onclick="this.id=\"xxx\";">...</button>');
Zkus přihodit cca 2 řádky nad a pod tímto řádkem (včetně tohoto řádku).

Můžeš také použít
var element = document.createElement("style");
a pak přiřazovat samotný styl jako:
element.innerHTML+="body { background-color:black; }";
nebo vytvářet "textový blok":


var text = document.createTextNode("body { background-color:black; }");
//a následně použít
element.appendChild(text);

EDIT: Nemůžeš, viz níže.
peta
Profil
<body>
<script>
document.write("<style>span {color:#f00;}</style>");
document.write("<span>aaa</span>");
</script>
</body>
Viz Str4wberry, upraveny kod funguje naprosto bez chyby, obarvi mi to cervene.
Chamurappi
Profil
Reaguji na WinKraka:
Tipnul bych si, že budeš mít někde uvnitř řetězce odřádkování.


Reaguji na TomaseJ:
když v apostrofech použiji zpětné lomítko
Zpětné lomítko v apostrofech není v tebou ukázaném kódu příčina. Máš tam onclick="this.id=" — hodnota atributu skončí uvozovkou.

Můžeš také použít
Myslím, že nemůže. To ti funguje ve všech prohlížečích?

nebo vytvářet "textový blok"
Stejný problém.
_es
Profil
WinKrak:
Začíná to již u tagu <style>:
document.write("<style>"); // to tučné vyhazuje chybu.
Presne tento príkaz? Ten chybu nespôsobí. Čo by to ako na stránke malo spraviť? Nevoláš funkciu document.write až po skončení načítania stránky? ( Časté potíže, zajímavosti a poučné debaty » Psaní metodou document.write po načtení stránky maže stránku)
TomasJ
Profil
Chamurappi:
A kde document.createElement nefunguje?

WinKrak:
Proč vlastně zapisuješstyl pomocí JS? Drobné úpravy potom v JS také jdou. Takto znevýhodníš ty, co budou mít zakázaný JavaScript a neuvidí element / stránku nastylované...
Chamurappi
Profil
Reaguji na TomaseJ:
Přiřazení stylu přes innerHTML předpokládám nefunguje ve starších Explorerech.
TomasJ
Profil
Chamurappi:
Omlouvám se, máš pravdu.

Tipnul bych si, že budeš mít někde uvnitř řetězce odřádkování.
To by pak přece psalo unterminated string literal ne?

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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