Validera <noscript>

De som får en färdig javascriptlänk med <noscript> vet att de är knepiga att få igenom validatorn. Noscript läggs ofta in som ett inline element och i vanliga fall fungerar inline med paragrafer. Fast inom noscript fungerar inte blockelement som paragrafer, tabellrader eller kolumner. I många fall är de även kopplade till VBscript (visual basic) och vi som “användare” kan inte göra ett dugg åt koderna. Validatorn uppmärksammar bland annat att det inte får finnas en paragraf i koden där den tycks befinna sig, men det är inte vi som har lagt in paragrafen.

Line ##, column #: end tag for element “P” which is not open

Jag vet en del som har avstått från vissa tjänster för att de värdesätter en sida utan kodningsfel mer än att få en eller två fel/varningar från olika länkscript. Det är givetvis upp till var och en att avgöra hur slaviskt man vill följa W3C:s rekommendationer gällande valideringen. Finns det då inte något att göra åt saken?

Workaround

Jag har hittat ett litet knep att “lura” validatorn på. Det kanske inte är den mest korrekta lösningen men den funkar. Koden validerar till och med i Strict!

Låt oss börja med att kika lite på hur koden ser ut.

<script type="text/javascript" src="xxxx.js"></script>
<noscript>
<img alt="" src="http://www.xxx.com/xxxx/xxxx.php?id=roskalendern&amp;st=img" />
</noscript>

Vi börjar med att omsluta hela koden med objekt och innanför noscript lägger vi sedan till en vanlig div. Det gör vi för att även bilden ska validera då det inte finns ngt som heter <img/> i noscript. Genom att göra detta så “förvandlar” vi noscript till att bli ett objekt och inom detta objekt kan man sedan lägga in sin html-koder så inte validatorn får fnatt.

<script type="text/javascript" src="xxxx.js"></script>
<object>
<noscript>
<div>
<img alt="" src="http://www.xxx.com/xxxx/xxxx.php?id=roskalendern&amp;st=img" />
</div>     
</noscript>
</object>

Svårare var det inte. Jag vill samtidigt passa på att säga att det finns andra, lite mer avancerade, lösningar som säkert är mer rumsrena är min och jag välkomnar alla tips.

Liknande poster:

One Comment Add yours

  1. Mimo says:

    Bra att du tar upp sånt här.

    Jag har ett eget litet dilemma med ett plugin som skapar style-koder inline i body. Kommer eventuellt att bolla över det till dig någon dag…

    *Kram!*

Leave a Reply

Your email address will not be published. Required fields are marked *