Web標準化時代のJavaScript

古い書き方を新しい書き方に変えるには(scriptタグの変更)

まず、最初に変更するのはscriptタグです。旧来の書き方は以下のような感じになっているでしょう。【サンプル1を実行
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Sample</title>
<SCRIPT LANGUAGE="JavaScript"><!--
alert("JavaScript");
// --></SCRIPT>
</head>
<body>
<p>ページが読み込まれるとアラートダイアログを表示します</p>
</body>
</html>
赤字で示した部分が旧来の書き方になっている部分なので、ここを変更します。まず、スクリプトタグはSCRIPTからscriptとして小文字に変更します。HTMLの場合は大文字でも構いませんがXHTMLなどへ移行する際の事を考えて小文字にしておくのが良いでしょう。次に属性を変更します。これはLanguage属性をtype属性に変更することになります。つまり以下のようになります。【サンプル2を実行
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Sample</title>
<script type="text/javascript"><!--
alert("JavaScript");
// --></script>
</head>
<body>
<p>ページが読み込まれるとアラートダイアログを表示します</p>
</body>
</html>
対象とするブラウザがInternet Explorer、Firefox、Safari、OperaなどWeb標準に沿ったものであれば、これで問題ないでしょう。しかし、これ以外のブラウザで古い書き方でないと認識されない場合や、type属性を指定することによって動作が変わってしまうブラウザ、スクリプトのバージョンを明記している場合で書き直しができないような場合もあります。このような場合は期待通りに動く事を最優先にし、下手な書き換えは行わないことです。JavaScriptの場合、HTMLやCSSと異なりプログラムなので下手に書き換えることによってエラーで動作しなくなってしまう事があるためです。もし、未だに古いNetscape 4でも見られることができるように、と指定してくる場合には注意が必要です。*1
また、以下のように両方の属性を併記する事も可能です。どのみち動作対象とするブラウザで動作確認を行ってから指定するのが安全です。【サンプル3を実行
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Sample</title>
<script type="text/javascript" language="JavaScript"><!--
alert("JavaScript");
// --></script>
</head>
<body>
<p>ページが読み込まれるとアラートダイアログを表示します</p>
</body>
</html>

*1 なぜ、そんなに古いブラウザを使い続けるのか、と疑問に思う人もいるでしょう。しかし、新しくコンピューターやソフトウェアを入れ替えることができない環境も存在するため、そのように指定されてしまう場合もあります。例えば行政関係や医療関係などでは新しいバージョンのブラウザをインストールする事も駄目なこともあります。