jo: xhtml validator meckert bei 'ist kleiner als' zeichen

hallo,

Meine Seite wird zwar als XHTML 1.0 transitional validiert, aber mit folgender meldung

Warning Line 18, column 16: character "<" is the first character of a delimiter but occurred as data .
for(var i=11; i <= subNavMax; i++)
This message may appear in several cases:

You tried to include the "<" character in your page: you should escape it as "&lt;"
You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
Another possibility is that you forgot to close quotes in a previous tag.

muß ich jetzt '&lt'  in JavaScript  verwenden, sähe nicht sehr schön aus im quellcode,

so sieht mein script aus

  
<script type="text/javascript">  
//SUB preloading  
var picPath="../../images/";  
var subNavMax = 13;  
for(var i=11; i <= subNavMax; i++)  
{  
mainNavOut[i]=new Image;  
mainNavOut[i].src=picPath+i+"_mainnav_out.gif";  
mainNavOver[i]=new Image;  
mainNavOver[i].src=picPath+i+"_mainnav_over.gif";  
}  
//SUB preloading  
</script>  

gruß

jo

  1. Hi!

    Ich hab das Problem durch auskommentieren gelöst (siehe unten)
    Ich hoffe geholfen zu haben

    mfg Facetious

      
    <script type="text/javascript">  
    <!--  
    //SUB preloading  
    var picPath="../../images/";  
    var subNavMax = 13;  
    for(var i=11; i <= subNavMax; i++)  
    {  
    mainNavOut[i]=new Image;  
    mainNavOut[i].src=picPath+i+"_mainnav_out.gif";  
    mainNavOver[i]=new Image;  
    mainNavOver[i].src=picPath+i+"_mainnav_over.gif";  
    }  
    //SUB preloading  
    -->  
    </script>  
    
    
    1. Moin!

      Ich hab das Problem durch auskommentieren gelöst (siehe unten)
      Ich hoffe geholfen zu haben

      Dein Kommentarende sorgt für einen Javascript-Fehler! Du mußt das HTML-Kommentarende durch einen Javascript-Kommentar vor der Ausführung schützen!

      // -->
      </script>

        
       - Sven Rautenberg
      
      -- 
      My sssignature, my preciousssss!
      
      1. Hello out there!

        Dein Kommentarende sorgt für einen Javascript-Fehler! Du mußt das HTML-Kommentarende durch einen Javascript-Kommentar vor der Ausführung schützen!

        Nö, sondern die unsinnigen HTML-Kommentare weglassen.

        See ya up the road,
        Gunnar

        --
        “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
    2. Hello out there!

      Ich hab das Problem durch auskommentieren gelöst (siehe unten)
      Ich hoffe geholfen zu haben

      Nein, hast du nicht. Das Auskommentieren als HTML-Kommentar ist (1) völlig überflussig und kann (2) dazu führen, dass das Script gar nicht mehr ausgeführt wird (bei Verarbeitung als 'application/xhtml+xml'). [http://de.selfhtml.org/html/xhtml/unterschiede.htm#script_style@title=UNTERSCHIEDE-SCRIPT-STYLE]

      (Außerdem gibt das Probleme, wenn ein '--'-Operator im Script vorkommt, da dieser den Kommentar beendet.)

      Alternativ zu molilys Notation können auch einzeilige JavaScript-Kommentare verwendet werden:

      <script type="text/javascript">  
      [code lang=javascript]// <![CDATA[  
      ...  
      // ]]>
      

      </script>[/code]

      See ya up the road,
      Gunnar

      --
      “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
  2. Hallo,

    muß ich jetzt '&lt'  in JavaScript  verwenden, sähe nicht sehr schön aus im quellcode,

    Man kann theoretisch &lt;, &gt; und &amp; anstelle von <, > und & verwenden.
    Da du das XHTML wahrscheinlich nicht als »echtes« XHTML auslieferst (siehe MIME-Typen), ist das allerdings problematisch. Denn Browser, die das Dokument als gewöhnliches HTML behandeln, wandeln diese Entity-Referenzen nicht wieder zurück in die betreffenden Zeichen (das ist so in HTML vorgeschrieben - lediglich der Validator wendet die anderslautende XHTML-Regelung an). Also gäbe es damit Fehler im JavaScript.

    Deshalb benutzt man, wie unter http://de.selfhtml.org/html/xhtml/unterschiede.htm#script_style erklärt, einen CDATA-Abschnitt, sodass die besagten Zeichen <, > und & problemlos im script-Element verwendet werden können:

    <script type="text/javascript">  
    [code lang=javascript]  
    /* <![CDATA[ */  
    ...  
    /* ]]> */  
    
    ~~~</script>[/code]  
      
    Das stellt dann HTML-Browser zufrieden und ermöglicht gleichzeitig die Verarbeitung als »echtes« XHTML.  
      
    Mathias
    
    -- 
    [Visitenkarte](http://community.de.selfhtml.org/visitenkarten/view.php?key=17) · [SELFHTML Weblog](http://aktuell.de.selfhtml.org/weblog/)
    
    1. ok,

      Deshalb benutzt man, wie unter http://de.selfhtml.org/html/xhtml/unterschiede.htm#script_style erklärt, einen CDATA-Abschnitt, sodass die besagten Zeichen <, > und & problemlos im script-Element verwendet werden können:

      Das stellt dann HTML-Browser zufrieden und ermöglicht gleichzeitig die Verarbeitung als »echtes« XHTML.

      dann werde ich das mal tun.

      danke für eure hilfe

      einene schönen tag noch

  3. Hi,

    eine weitere Lösungsmöglichkeit wäre, das Script in eine eigene Ressource zu packen, so daß es gar nicht im XHTML auftaucht ...

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.