アフィリエイト広告を利用しています
最新記事
日別アーカイブ

広告

posted by fanblog

2012年09月11日

ブラウザ判定

・Miocrosoft Internet Explorer
 条件付きコンパイルで判定可能です。
 /*@cc_on!*/false
  IE の場合は /*@cc_on〜*/ の中身が実行され、「!false」=「true」と解釈されます。
  IE 以外ではそのままコメント扱いされるので、「false」のままと解釈されます。

 <バージョン番号の判定(IE 前提)>

 ・IE9
  新たに追加された opacity スタイルシートで判定します。

  ie9 = (document.documentElement.style.opacity !== undefined);

 ・IE8
  document.documentMode の存在有無で判定できますが、互換モードでも IE8 と判定されます。
  互換モードの場合は documentMode で返される値をみてもいいと思います。

  ie8 = (document.documentMode !== undefined);

 ・IE7
  新たに使用できるようになった、XMLHttpObject で判定します。

  ie7 = (!!window.XMLHttpRequest);

 ・IE6
  スタイルシート textOverflow で判定します。

  ie6 = (document.documentElement.style.textOverflow !== undefined);

・Mozilla Firefox
 古いバージョンでは document.getBoxObjectFor で判定します。
 新しいバージョンでは moz 系の属性、たとえば window.mozInnerScreenX で判定します。

 ffold = (document.getBoxObjectFor !== undefined);
 ff = (window.mozInnerScreenX !== undefined);

・Opera
 window.opera で判定します。

 opera = (!!window.opera);

・Apple Safari
 window.safariHandler で判定します。
 →間違いでした。ユーザー定義オブジェクトでした。
  window.Selection window.Window を組み合わせます。

 safari = (!window.Selection && !window.Window);

・Google Chrome
 window.chrome で判定します。

 chrome = (!!window.chrome);


function evaluate(_element) {
val elm = _element;
var ret = 'Unknown';
if(/*@cc_on!*/false) {
var ie9 = (document.documentElement.style.opacity !== undefined);
var ie8 = (document.documentMode !== undefined);
var ie7 = (!!window.XMLHttpRequest);
var ie6 = (document.documentElement.style.textOverflow !== undefined);
ret = 'Internet Explorer ' + (ie9 ? '9' : ie8 ? '8' : ie7 ? '7' : ie6 ? '6' : '5.5 less');
} else if(document.getBoxObjectFor !== undefined) {
ret = 'Old Firefox';
} else if(window.moxInnerScreenX !== undefined) {
ret = 'Mozilla Firefox';
} else if(!!window.opera) {
ret = 'Opera';
} else if(!window.Selection && !window.Window) {
ret = 'Apple Safari';
} else if(!!window.chrome) {
ret = 'Google Chrome';
}
this.value = ret;



{a8.net http://books.livedoor.com/item/3481813}
【このカテゴリーの最新記事】
posted by FJT at 05:58| javascript
プロフィール
FJTさんの画像
FJT
使えそうな技術情報を掲載しています。 ぜひ、役立ててください。
プロフィール
リンク集
×

この広告は30日以上新しい記事の更新がないブログに表示されております。