Web標準化時代のJavaScript

スクリプトは正しいのにMac IE5でエラー

他のブラウザではエラーが出ないのにMac版Internet Explorer 5 (Mac IE5) だけエラーが発生することがあります。Mac IE5で使用できない命令を使っている場合には当然エラーが発生しますが、コメントしかないのにエラーが発生することがあります。実際の例が以下のサンプル1です(サンプル2も全く同じ内容)。【サンプル1を実行】【サンプル2を実行
■HTMLファイル
<!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" src="macie5.js"></script>
</head>
<body>
<p>Mac IE5でのエラー</p>
</body>
</html>
■スクリプトファイル (macie5.js)
// Comment
これはスクリプトファイルの文字コードがutf-8で、なおかつBOM (Byte Order Mark) が付加されている場合、文字コードがutf-16の場合などMac IE5で未サポートの文字コードを使用している場合に発生します。この場合には解決方法は簡単でutf-8であればBOMなしのutf-8のテキストファイルとして保存し、utf-16の場合はBOMなしのutf-8として保存します。【サンプル2を実行
■HTMLファイル
<!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" src="macie5.js"></script>
</head>
<body>
<p>Mac IE5でのエラー</p>
</body>
</html>
■スクリプトファイル (macie5.js)
// Comment
スクリプトファイルだけでなくスタイルシートファイルもutf-16などにすると読み込まれずスタイルが反映されないので注意が必要です。