Kikket raskt på en tilfeldig utvalgt TD dings, og den så slik ut:
Kode:
<script type="text/javascript">
var uri = 'http://impno.tradedoubler.com/imp?type(img)g(18216734)a(1965382)' + new String (Math.random()).substring (2, 11);
document.write('<a href="http://clk.tradedoubler.com/click?p=136026&a=1965382&g=18216734" target="_BLANK"><img src="'+uri+'" border=0></a>');
</script>
Litt usikker på hva TD driver med her, men skulle vel tro at de har litt snøring når det kommer til javascript, så da får man vel anta at det er en grunn til at det er skrevet slik det er.
Normalt så burde bilder ha en <alt> tagg, og den kan du sikkert legge til uten at det er noe problem, videre så er det vel ikke godkjent å skrive border=0 i den doctypen du bruker, men det går sikkert an å skrive border="none" i stedet.
Hovedproblemet ligger i lenkene som settes inn i dokumentet ettersom de bruker "&" tegnet en del, og "&" skrives normalt & eller som URI (som skulle bli %26) i HTML, og oppfattes da som regel som & av nettleseren, også i lenker.
Aller sist, i xhtml doctypen du bruker må alle tagger avsluttes, så da slenger vi på en slash på slutten av <img>, og riktig skrevet skulle det vel bli noe sånt:
Kode:
<script type="text/javascript">
var uri = 'http://impno.tradedoubler.com/imp?type(img)g(18216734)a(1965382)' + new String (Math.random()).substring (2, 11);
document.write('<a href="http://clk.tradedoubler.com/click?p=136026&a=1965382&g=18216734" target="_BLANK"><img src="'+uri+'" alt="TD" border="none" /></a>');
</script>
Det ser ut som en del ting hadde ordnet seg ved å skifte doctype, og selv med omskrivninger kan det hende du får opp feil om at <a> elementet ikke er tillatt inne i <script> elementet eller noe sånt tull.
En annen ting er at for å finne ut akkurat hvorfor TD har valgt å skrive det slik, må man gå tilbake til deres script og se hva de gjør der, og det blir fort vekk mye greier.
Det er heller ikke sikkert dette fungerer i det hele tatt slik som det er skrevet ovenfor dersom TD på en eller annen måte validerer linkene og ikke godtar entities eller URI i stedet for &, så det må du nesten bare prøve og se.
Så nå at det var noen andre ting fra TD rundt på de sidene også, og blant annet har man skrevet '<sc'+'ript>' noen steder, og hvorfor man føler et behov for å bruke en pluss midt i script taggen som skal settes inn i dokumentet vet ikke jeg, men den plussen (og de to ' )kan bare fjernes i forhold til din side, problemet ligger igjen i om TD av en eller annen grunn bruker den plussen til noe fornuftig?
Det aller beste ville sikkert vært å bytte til en html5 doctype, da ville ikke script taggene bli validert i det hele tatt, men det ser ut til å bli en betydelig jobb, og da ville jeg nok heller tatt den enkleste løsningen, som blir å slenge cdata rundt all elendighet fra TD, og da blir det slik:
Kode:
// <![CDATA[
<script type="text/javascript">
var uri = 'http://impno.tradedoubler.com/imp?type(img)g(18216734)a(1965382)' + new String (Math.random()).substring (2, 11);
document.write('<a href="http://clk.tradedoubler.com/click?p=136026&a=1965382&g=18216734" target="_BLANK"><img src="'+uri+'" border=0></a>');
</script>
// ]]>
Eneste du trenger å gjøre er å lime inn de cdata kommentarene før og etter <script> taggene, så skal de validere.