jQuery で閲覧ブラウザ、バージョン、プラットフォーム を判別する プラグイン を作成しました。
jQuery 1.9 から browser
のサポートがなくなるので、その対応用プラグインです。
タブレットと携帯電話(モバイル)の判別も行えます。
window.navigation.userAgent
文字列を利用します。
文字列をせっせと解析して、各フラグを立てて回ります。
jquery.depend プラグイン
ダウンロード |
V1.1.8
旧バージョン
|
---|---|
API ドキュメント | GitHub - garafu / jquery.depend : Wiki(英語) |
外部リンク |
bower - jquery.depend
|
インストール
通常利用
ダウンロードした js ファイル または zip ファイル中 //src/jquery.depend.js
を、jQueryを読み込んだ後に読み込むようにします。
1 2 | < script type = "text/javascript" src = "./jquery-1.9.1.js" ></ script > < script type = "text/javascript" src = "./jquery.depend.js" ></ script > |
旧 jQuery プラグイン 互換モード 利用
古い実装の jQuery プラグイン と混在して利用する場合、うまく動作しないケースがあります。
そのような場合、以下のように __BACKWARD_COMPATIBILITY_ENABLED
グローバルフラグ を有効にすると動作する可能性があります。
ただし、このフラグを有効にすると、 $.browser.version
オブジェクト が テキスト に変更される点 (バージョンに関するメソッドが利用できなくなる点) に注意してください。
1 2 3 4 5 | < script type = "text/javascript" > window.__BACKWARD_COMPATIBILITY_ENABLED = true; </ script > < script type = "text/javascript" src = "./jquery-1.9.1.js" ></ script > < script type = "text/javascript" src = "./jquery.depend.js" ></ script > |
使い方
ブラウザ判定
基本的に jQuery 1.9 以前と同じコードが利用できます (サポートには jQuery 1.9 以上 と記載がありますが…)。 判定できる ブラウザ は、Opera、MSIE、Firefox、Chrome、Android標準ブラウザ、Safari、Silk、Mercury等。
1 2 3 | if ($.browser.msie) { // Internet Explorer の場合 } |
ブラウザバージョン判定
バージョン判定は文字列ではなく、 object になっています。 バージョン判定はメソッドを通すことで簡単に比較できるようになっています。
1 2 3 | if ($.browser.is( 'msie' ) && $.browser.version.isOrLess(7)) { // Internet Explorer 7.0 以前のブラウザの場合 } |
プラットフォーム判定
携帯電話、タブレットを判別します。
1 2 3 4 5 6 7 | if ($.platform.mobile) { // 携帯端末(iPhone, Android, Windows Phone...)の場合 } else if ($.platform.tablet) { // タブレット端末(iPad, Android)の場合 } else { // 通常PCの場合 } |
ここでは、プラグインの一部機能しか取り上げていません。 詳細は下記の wiki をご参照ください。
garafu / jquery.depend Wiki(英語)
まぁ、すでに Browser プラグイン が存在しているのですが… このプラグインは Android タブレット端末 の判定が少し厳しいような気がしました(コードでのみ確認)。 あとは何より個人的な興味もあって作ってみたという経緯です。
更新履歴
- 2020/06/24
- リンク更新:v1.1.8。"Microsoft Edge (chromium版)"対応。
- 2015/05/17
- リンク更新:v1.1.7。"Microsoft Edge"対応。Opera のバージョンが正しく取得できない不具合修正。
- 2015/05/06
- リンク更新:v1.1.6。Opera のバージョンが正しく取得できない不具合修正。
- 2013/10/20
- リンク更新:v1.1.5。IE11対応。
- 2013/06/04
- リンク追加:latest version、older version
最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!