ブラウザ判定でMozilla Firefoxの取得の方法

このQ&Aのポイント
  • ブラウザ判定のサンプルソースを使用した際、IEかNNかを見分けることはできますが、Mozilla Firefoxの判定を行うことができません。
  • ブラウザごとの仕様の違いに少し戸惑っているJavaScript初心者です。IEとNNについての解説は多く見かけますが、FireFoxに関する情報は少ないです。
  • Mozilla Firefoxの判定について今少しだけ学びましたが、まだ完全に理解しているわけではありません。情報を共有していただけると助かります。
回答を見る
  • ベストアンサー

ブラウザ判定でMozilla Firefoxの取得の方法

IEかNNかを見分けるためのサンプルソースを見たら navigator.appName を使用していました。 しかしappNameが返すのは"Microsoft Internet Explorer"か"Netscape"かの2つしかない(とほほによると)ので、それ以外の判定ができません。 ほかの方法などで判定できるのでしょうか?もしかしたら、むずかし~いソースになってしまいますか? JavaScriptを今少しかじっているところですが、ブラウザごとの仕様の違いに少しとまどっています。 IEとNNを比較して解説したサイトは多いのですが、FireFoxも考慮に入れたサイトはあまり見かけません。 もしありましたら紹介おねがいします。

  • ggaogg
  • お礼率86% (209/243)

質問者が選んだベストアンサー

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

まず、Netscape といっても Netscape4.x以前 と6.0以降では全く別のブラウザです。(5.xは存在しません) Netscape6以降はgeckoというレンダリングエンジン (htmlを処理するプログラム、CSSやJavascriptを処理するコンポーネント等も含まれています) を使っていますが、Firefoxも(バージョンの違いはあれど)同じものを使っていますのでNetscape6.0以降とFirefoxは概ね同じ動作をすると考えてよいです。 (Netscape6は現行の7に比べてバグが多くて厄介ですが。) とりあえず細かく正確に分類したければ navigator.userAgent で調べることができます。→実際の値は参考URL1 userAgentの文字列に'Firefox'が含まれていればFirefoxです。 ブラウザの判定方法は上記以外に色々あるけど、どんな手段を用いればよいかは、どんな機能を操作したいかによって違ってきます。

参考URL:
http://www.openspc2.org/userAgent/index.html
ggaogg
質問者

お礼

値はけっこうごちゃごちゃしていますね。 この中から自分で探したいものに共通する規則性を見つけてキーワードにしなければいけないということですね。 ありがとうございました。

関連するQ&A

  • ブラウザ判定

    xpの時に作ったJavascriptを試してみたんですが、今win7,IE11なんですが、 brws = navigator.appName; alert(brws) ; をすると、netscapeと返します。 今はもういろいろと、ソースが変わってしまったのでしょうか? また新しい本を買って学びなおす必要がありますか?もしまた組むとしたら。

  • JavaScriptを使って、現在のブラウザがhtmlかchmかを判定する方法は?

    よろしくお願いします。 htmlをまとめて、chmを作っています。 JavaScriptを使って、現在のブラウザがhtmlかchmかを判定する方法はありますか? navigator.appNameで見分けられると思ったのですが、両方ともMicrosoft Internet Explorerになっています。 何か良い方法があれば教えていただけないでしょうか。 つまり、html、chmによって処理を分けたいと思っているのです。

  • MAC ブラウザ情報を取得するには

    はじめまして、 ゆありです。 質問させて下さい。 ASPを用いて、クライアントがMACでNetscapeだった場合、ブラウザのバージョンを取得したいんです。 ユーザエージェントを取得してみたのですが、 (1)OS :navigator.userAgent      Win/Mac を判定 (2)ブラウザ :navigator.appName       Explorer/ Netscape を判定 (3)ブラウザバージョン :IE は navigator.userAgent.substring(navigator.userAgent.indexOf("Netscape",0)+9,myAgent.indexOf("Netscape",0)+10); Netscape はnavigator.userAgent.substring(navigator.userAgent.indexOf("MSIE",0)+5,myAgent.indexOf("MSIE",0)+6); 上記の情報で、Windows(IE/Netscape)と MAC(IE)がクライアントの場合、 (3)の結果に正常値(IE6.0なら6、Netscape7.1なら7)が帰ってくるのですが、MAC(Netscape)だとうまくいきません。 MACで、Netscapeのバージョンの取得方法を知っている方、 または、Netscapeの7 と判定する為に取得できそうな情報をしっている方が いらっしゃいましたら教えて下さい。

  • Javaでブラウザ判定

    Javaでブラウザの判定を行いたいのですが 何かありますでしょうか? なにぶん初心者なもので どうしたらいいか検討もつきません。 JavaScriptでの判定方法は navigator.appNameなどで出来るみたいですが JavaScriptではなく Javaで出来るかどうか探しているのですが 分かる方がいらっしゃいましたら ご教授下さい。 よろしくお願いします。

    • ベストアンサー
    • Java
  • ブラウザが判別出来ない。

    お世話になっております。 JavaScriptの本を購入しました。 その本にブラウザ判定のスクリプトが掲載されており、それをそのままアップしたところ、私はIE6なのにIE4と判別されてしまいました。 下記がそのスクリプトです。 ちなみに、私はXPのIE6です。 このスクリプトはこれで完璧なのでしょか? また、出来ましたら、このスクリプトを試していただけたらと思うのですが・・・よろしくお願い致します。 <script language="JavaScript"> <!-- if( navigator.appVersion.charAt(0)==4){window.location.href = "nn4.html"} // NN Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "nn5.html"} // NN Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "nn6.html"} // NN Ver6 の場合 } if( navigator.appName.charAt(0)=="M"){ if( navigator.appVersion.charAt(0)==2){window.location.href = "ie2.html"} // IE Ver2 の場合 if( navigator.appVersion.charAt(0)==3){window.location.href = "ie3.html"} // IE Ver3 の場合 if( navigator.appVersion.charAt(0)==4){window.location.href = "ie4.html"} // IE Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "ie5.html"} // IE Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "ie6.html"} // IE Ver6 の場合 } //--> </script> <noscript>JavaScript を使用しています。JavaScript を有効にしてください。</noscript>

  • JavaScriptで「実行中のブラウザ」の確認

    JavaScriptでプログラムを組んでいます。 OSはWin7 Home 64bit、通常使うブラウザは「FireFox」です。 ブラウザによって実行内容を変えたいため、「navigator.appName」で情報を得るのですが、 どのブラウザでも「Netscape」(FireFoxのことだと思います)になってしまいます。 どうも「navigator.appName」は通常使うブラウザの値が設定されているようです。 「通常使うブラウザ」ではなく、「実行中のブラウザ」の情報が欲しいのです。 いい方法があれば、教えてください。

  • Netscape7.1上でJavaScript(window.close)が動作しません

    こんにちは,Netscape7.1でスクリプトが思った様に動いてくれずに少し困っています.もし何かご存知のことがあればお知らせください. Web上で動く社内システムを開発しているのですが,スクリプトの動作がInternet ExplorerとNetscapeで大きく異なるため,使用はInternet Explorerのみに限定しようと思い,先頭で以下のソースの様なチェックを入れています. <SCRIPT LANGUAGE="JavaScript"> <!-- if (navigator.appName == "Microsoft Internet Explorer") { } else { alert("本システムは,Internet Explorerで使用してください."); window.close(); } //--> </SCRIPT> ブラウザがNetscape6.1であれば問題なく意図した動きをしてくれるのですが,Netscape7.1ではalaert表示後OKボタンを押してもブラウザが終了しません. 単純にバージョンによる差なのか,セキュリティなどの設定の違いか判然とせず,色々と調べてみたのですが,結局分かりませんでした. 何か同じ様な経験をお持ちの方やアドバイスをいただける方がいらっしゃると大変助かります. よろしくお願いします.

  • indexOf("Internet Explorer")!=-1 とは何のこと?

    送信内容確認フォームのソースサンプルに if(navigator.appName.indexOf("Internet Explorer")!=-1){…… というスクリプトがあるのですが、 indexOf("Internet Explorer")!=-1 の部分が何のことかわかりません。 お教えいただければ幸いです。

  • CSSをブラウザ別に振り分ける方法

    JavaScript初心者で、ソースは本に載っていたものをそのまま使っているのですが、その本だと、MAC、WIN-IE、WIN-NSの3つの外部スタイルシートを読み込ませるスクリプトしか載っていないので、困っています。 MACでも、IE、NS両方とも振り分けたいんです。 今使っているソースは以下です。 このファイル自体は、フレームセットファイルでフレームを切った中のファイルなのですが、フレームセットファイルにも<script language="JavaScript">以降の記述は必要なのでしょうか? 必要な場合は、どのようにして記述したら良いか教えて下さい。 よろしくお願いします。 <HTML> <HEAD> <!--?--> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=EUC-JP"> <TITLE></TITLE> <script language="JavaScript"> <!-- mac=(navigator.appVersion.indexOf("Mac")!=-1)?true:false; ie=(navigator.appName.charAt(0) == "M")?true:false; ns=(navigator.appName.charAt(0) == "N")?true:false; if (mac) { fName = "mac.css"; } else { if (ie) { fName = "win_ie.css"; } else if (ns) { fName = "win_ns.css"; } } if (fName != null) { document.write("<LINK REL=STYLESHEET HREF='"+fName+"' TYPE='text/css'"); } //--> </script> </HEAD>

  • ブラウザに内蔵されたJavaScriptのバージョン

    Internet Explorer や Netscape, FireFox といったブラウザに、どのバージョンの JavaScript が入っているのかを知る方法がありますか? papashiro

専門家に質問してみよう