- 締切済み
IEとNSとその他を判断し実行するHTMLを切り替える方法は?
IEとNSと、その他のブラウザのそれぞれのヴァージョンによって、実行するHTML文を変えたいのですが、どういう方法がありますか? Windows環境とMac環境も考慮したいです。 同じHTML上で振り分けてもいいのですが、それぞれにブラウザ別のHTMLファイルを用意し、ブラウザによって切り替えて実行するのでも良いです。 JavaScript以外のスクリプト(CGI)でもかまいませんが、どのブラウザでも機能できる方法を取りたいです。 ご教授下さいませ。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- txrx
- ベストアンサー率45% (83/184)
googleで“環境変数HTTP_USER_AGENT”とすると山のように出てきます。(^^; URLは、・・・.cgiとなってしまいます。 Index.cgiとすれば、http://???.com/cgi-bin/で出てくるかもしれません。 そのほかには、SSIを使用して~.shtmlとするか、同様にIndex.shtmlとすれば、http://???.com/でトップページ表示されますので、URLはあまり気になりませんね。
- davosuke
- ベストアンサー率61% (34/55)
JavaScriptの場合は Navigatorオブジェクトの使用することで可能です。 Navigator.appNameがブラウザ名を取得します。 NSは Netscape IEは Microsoft Internet Explore をそれぞれ返します。 Navigator.appVersionでブラウザのバージョンを取得します。 実行例 バージョン:4.6[ja](win98;I) バージョン番号の後ろに、OS名、インターナショナル版・US版などの種別、CPUの種類などの情報が付加されます。 ANo.1 のように ユーザエージェントを取得したいのであれば Navigator.userAgent で取得できます
お礼
どうも、ありがとうございました。 参考にさせていただきます。
- txrx
- ベストアンサー率45% (83/184)
CGIを使用すると、環境変数HTTP_USER_AGENTにブラウザの種類が設定されます。 この種類から判断して出力するHTMLファイルを選択すればよいと思います。 CGIであれば、PerlでもCでもC++でもできます。
お礼
どうも、ありがとうございました。 参考にさせていただきます。
補足
具体的に、サンプルなどが記述されているサイトがあれば教えていただけると助かります。 ちなみに、トップページからすでに判定させたいのですが、CGIを使う場合URLが気になります。 例えば、「http://www.xxxx.net/yyy.cgi」というふうになってしまいますか?
お礼
どうも、ありがとうございました。 参考にさせていただきます。