Hallo,
dann versuch mal Javascript mit CDATA korrekt in XHTML einzubinden
Diese Quelle verbreitet ziemlich viel Unsinn. Da ist von älteren und neueren Browsern die Rede. Damit hat die Sache aber gar nichts zu tun. Browser machen von sich aus gar nichts. Der Punkt, an dem sich entscheidet, wie das Markup verarbeitet wird, ist der MIME-Typ. Es geht darum, dass ein XHTML-Dokument sowohl als HTML-Tag-Soup als auch als XML verarbeitet werden kann.
Das Problem von
<script type="text/javascript">;
<![CDATA[
//content of your Javascript goes here
]]>
</script>
sind nicht irgendwelche "älteren Browser", sondern die Verarbeitung als HTML-Tag-Soup (text/html). In dem Fall wird "<![CDATA[" als JavaScript-Code interpretiert, was natürlich einen Fehler wirft und zum Abbruch des Scriptes führt. Also: Auskommentieren.
Das hier:
<script type="text/javascript">
<!-- // hide from really old browsers that noone uses anymore
// also hide from browsers that use the XHTML DTD
// content of your Javascript goes here
// -->
</script>
ist nicht "für moderne Browser und den Validator" problematisch, sondern immer dann, wenn das Dokument mit einem XML-Parser verarbeitet wird. Das macht der Validator natürlich, insofern stimmt die Aussage teilweise.
Die spekulative Erklärung
"Somit wird es wahrscheinlich bei einer neuen Generatoin Browser, welche sich strikt an XHTML Richtlinien hält, nicht mehr ausgeführt"
ist genauso irreführend wie
"hide from browsers that use the XHTML DTD"
Für einen Browser ist dieser Kommentar nur dann problematisch, wenn er das XHTML als mit seinem XML-Parser verarbeitet. Dazu muss der Webserver einen entsprechenden MIME-Typ senden (application/xhtml+xml, application/xml...). Es passiert nicht automatisch, nur weil der Browser modern ist oder standardkonform ist!
Die Seite http://de.selfhtml.org/html/xhtml/unterschiede.htm dürfte den Sachverhalt besser darstellen.
Mathias