Jag håller på att göra om min hemsida som är skriven i HTML till XHTML. Men jag har problem med min JavaScript räknare (och andra java scripts). Kontrollen klagar över att jag måste ha koder istället för tecknena i scriptet. ska jag eller Hur ska jag göra?
Alltså, du "HTML-kommenterar" bort all javascript för att validatorn inte ska försöka tolka det.
Javascriptet bryr sig inte om kommentarerna, t ex ska du ha ett script som öppnar ett fönster är detta den rätta koden:
Kan inte komma på något så här på rakt arm. Problemet är inte särskilt väldefinierat iheller. Upptäckte en del saker som du i alla fall kan rätta till.
Encooding:en i prologen. Se till så att den helst stämmer överens med vad din server serverar dokumentet som.
Attributet som jag markerat i rött. Ta bort det. Det finns inget attribut med det namnet definierat i DTD:n.
Sen ska det som Don_Tomaso sagt funka. Serverar du dokumentet som text/html ska det räcka med att lägga JavaScript-koden inom HTML-kommentarer.
Ursprungligen inskrivet av Nimh Är det fortfarande nödvändigt att kommentera bort Javascript alltså? Jag fick för mig att det var förlegat av någon anledning
Så vitt jag vet är det en legacy-grej. I en del gamla webbläsare så visas innehållet i för webbläsaren okända taggar (vanligtvis <style> och <script>) som ren text på skärmen. Därför lägger man till dessa kommentarer, så att Javascript/CSS-koden inte ska visas.
Men då synns ingen ting på skärmen... jag vill ju att JavaScriptet ska generera text på hemsidan... men den texten komenteras alltså också bort då. så den lösningen fungerar inte för mig.
Eftersom du kommenterar bort allt inom scriptet så kommer inte browsern läsa det pga. de nya reglerna som följer med xhtml (regler för xml): kommentarer ska klienten hoppa över utan att ens läsa innehållet, dessutom så får inte < eller & förekomma inom taggarna.
Det finns två lösningar:
<script type="text/javascript">
<![CDATA[
// Din javascript-kod här
]]>
</script>
För att få den andra att funka så lägger du bara javascript-koden i en extern fil, i och med att du gör det så behöver du inte tänka på de tecken som kan strula upp din markup och samtidigt kan browsern lägga scriptet i sin cache, vilket förhoppningsvis minskar internet-trafiken.
<script type="text/javascript">
<![CDATA[
// Din javascript-kod här
]]>
</script>
En liten notis om detta bara. När man serverar XHTML som text/html ska man använda HTML kommentarer (<!-- ... -->) som "escape". Serverar man XHTML som application/xhtml+xml ska man endast använda CDATA (<![CDATA[ ... ]]>). Så läser man av HTTP Accept headern och skickar innehållet baserat på om klienten förstår application/xhtml+xml eller inte (text/html) så måste man även på serversidan bygga in logik för att välja "escape".
Nu fungerar det med HTML bortkomentering. vet inte vad jag hade gjort för fel men jag tror att jag använde //--> istället för // -->
Så nu är problemet löst och koden hittar ni/du på www.bergq.se
Lite senare och få detta att fungera som det ska också.
För man använder samma script som jag använder nu och lägger i filen "javascript.js" då? Alltså det ska bara vara scriptet mellan taggarna som ska ligga i den filen inte <script> taggarna?
Ursprungligen inskrivet av Bergq
För man använder samma script som jag använder nu och lägger i filen "javascript.js" då? Alltså det ska bara vara scriptet mellan taggarna som ska ligga i den filen inte <script> taggarna?