レイヤーなどの新しい技術を使ったWEBページは、古いブラウザでは正しく表示されないことがあります。ここではInternet Exploler(IE)とNetscapeNavigator(NN)のバージョンが4.0以上の場合と、その他のブラウザの場合で別々なページを表示する方法を考えます。
ブラウザ名とブラウザのバージョンを取得し、それぞれの変数に格納するように設定します。<BODY>
<script language="JavaScript">
<!--
app = navigator.appName.charAt(0);
ver = navigator.appVesion.charAt(0);「navigator」オブジェクトは、ブラウザの情報を取得するさまざまなプロパティが用意されていて、ブラウザ名は「appName」、ブラウザのバージョンは「appVersion」で調べることができます。例えば、ブラウザがIE5.0の場合は、「appName」の値として「Microsoft Internet Exploler」、「appVersion」の値として「4.0(compatible; MSISE 5.0; Windows XP)」という値を取得することができます。ここでは、app=navigator.appName.charAt(0); でブラウザ名を変数appに格納する処理をし、ver = navigator.appVesion.charAt(0); でブラウザのバージョンを変数verに格納する処理をしています。
上で取得したブラウザ名とブラウザのバージョンに応じて、表示するページを振り分けるように設定します。
if ((app == "M") || (app == "N")) {
if (ver >= 4) {
location.href = "newversion.html";
}
else if (ver < 4) {
location.href = "oldversion.htm";
}
}
else {
location.href = ""oldversion.html";
}
// -->JavaScriptでは、ブラウザのウィンドウやページ内の各要素に対してさまざまな処理を行います。このとき、処理の対象になるウィンドウやページ内の各要素のことを総称してオブジェクトと呼びます。さらに、各オブジェクトには、オブジェクトの状態を変更するための属性(プロパティ)がいくつか用意されていて、" "内に値を設定することで、ウィンドウの状態やページ内の背景色や文字列などを切り替えることができます。「location」オブジェクトの「href」は、表示するページのURLを指定するためのプロパティです。ジャンプ先のURLを「location.href = 」の次の「"」と「"」の間に記述することで、目的のページへジャンプさせることができます。
上の例では、IEとNNでバージョンが4.0以上の場合にだけ「newversion.htm」にジャンプするように設定しています。