Axel Richter: Problem mit <body onload="init()">

Beitrag lesen

Hallo,

Ich verstehe aber immer noch nicht, was das bringen soll.

Es soll Browser, die eine bestimmte Scriptsprache nicht beherrschen, davon abhalten, diese falsch zu interpretieren.

Insofern gebe ich Christoph Recht, mit validem HTML hat das Problem nicht im Entferntesten zu tun.

Das "Problem" im Ausgangsposting war die Frage, warum der Validator die Angabe <body onload="init()"> bemängelt. HTML legt eben _nicht_ JavaScript als Standard fest, weshalb:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Titel</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Script-Type" content="text/vbscript">
<script type="text/vbscript">
<!--
Hallo = "Hallo"
//-->
</script>
</head>
<body onload="msgbox(Hallo)">
<h1>Hallo</h1>
</body>
</html>

valides HTML ist. Der Header "Content-Script-Type" sollte nun Browser, die kein VBScript können, vor Fehlern bewahren. Das geschieht allerdings nicht, weil FF und Opera in onload eben trotzdem JavaScript erwarten.

viele Grüße

Axel