過去と他人はかえられないが、未来と自分はかえられる このページをアンテナに追加 RSSフィード

2010-08-19 Safari 判定は難しい? このエントリーを含むブックマーク このエントリーのブックマークコメント

Safariの判定に

function isSafari() {return /a/.__proto__=='//'}

を使っていたけど、これだとAndroid1.6のChromeでTRUEを返します。

なので、ユーザエージェントを使わず、スマートにAndroid1.6のChromeを除外できないか探したけど見つからず・・・

とりあえず、navigator.appVersionで判定するロジックを追加

function isSafari() {return /a/.__proto__=='//' && !window.navigator.appVersion.match(/(Chrome|Android)/i) }

どなたかもっとスマートやり方教えてー

※元の判定ロジックのネタ元はこちら

トラックバック - http://d.hatena.ne.jp/magiwo/20100819