プロが教える店舗&オフィスのセキュリティ対策術

OSとブラウザを判別するスクリプトを見て自分でも考えたのですが…。
私の頭が足りないせいで
「WindowsのIE5以上のブラウザと、Mac含む他のブラウザを判別して別のページにとばさせる方法」がわかりません…
どなたか教えてください。
よろしくお願いします。
Windows Ie5以上→a.html
mac含むそのほかのブラウザ→b.html

A 回答 (3件)

普通はブラウザ名やバージョン、OSをそれぞれ調べ、複合条件判断をします。


が、ここまで極端な条件ならば、下記のスクリプトで十分でしょう。
(これを<HEAD>~</HEAD>の中に入れればOKです。)

<SCRIPT language="JavaScript">
<!--
var nextPage = 'b.html';
if (navigator.userAgent.match(/MSIE (\d\.\d+); Windows/)) {
  if (RegExp.$1 >= 5.0) nextPage = 'a.html';
}
location.replace(nextPage);
//-->
</SCRIPT>

IEでしかもWindowsならば、ユーザーエージェントの中に
  MSIE *.*; Windows **
というような文字列が入っているので、これを正規表現で照合し、さらにそのバージョン部分を取り出して数値比較しています。

また、ページを遷移させるのに、location.replace(nextPage) を使いましたが、これは現在のページを指定したURLで置き換えるものです。(上記スクリプトを書いたページに「戻る」ことはできません。)
普通のリンクのようにページ間に前後関係を持たせたいなら、
  location.href = nextPage;
としてください。

注意:
ブラウザ上では判断しにくい半角スペースがあるので、ソースを表示して確認して下さい。
また、行頭の全角スペースは、半角スペースかタブに変換してください。
    • good
    • 0
この回答へのお礼

上手く動きました!どうもありがとうございました!!嬉しいです~~1

お礼日時:2002/07/10 19:08

ブラウザを判別して自動的に別のページにジャンプする方法はわりませんが


下記を参考にしていただければ。

●リンクをクリックしたときにブラウザを判別しそれぞれ別のページにジャンプする方法
(この方法は良く使われています)

http://www.openspc2.org/reibun/javascript/link/0 …

●ブラウザ別にスタイルシートを使い分ける方法(NTT東日本はこの方法です)

http://www.openspc2.org/reibun/javascript/browse …

コピペしてURLなどを替えれば使えると思います。

参考URL:http://www.openspc2.org/reibun/javascript/
    • good
    • 0
この回答へのお礼

見させていただきました♪
これから勉強するのに使いたいと思います。ありがとうでした~!

お礼日時:2002/07/10 19:08

navigator.appVersion.indexOf("MSIE") ← IE


navigator.appName.indexOf("Netscape") ← NN
navigator.appVersion.indexOf("Mac") ← Mac

戻りが -1 じゃなければ、条件分岐(if)で飛ばせば OK です。

この回答への補足

すいません、基本的なこともよくわかっていないみたいで…
戻り、の意味も分かりません…すいません・・・

補足日時:2002/07/10 18:11
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!