确定用户是否实际使用Safari的最佳方法是什么?
答案 0 :(得分:4)
您可能希望阅读http://www.quirksmode.org/js/detect.html然后http://www.quirksmode.org/js/support.html,并了解您可以做的最好的事情是探测用户告诉您的是他们正在使用的浏览器(这将是User_Agent)。您永远不能100%确定地说他们正在使用给定的浏览器,因为您必须依赖从浏览器传输的内容,并且可以在许多点覆盖它。
但是,quirksmode.org解决方案通常是处理所有引擎和浏览器的单一检查的最佳方式。
您是否使用特定的JavaScript框架,可以让您更准确地确定他们使用的是什么?您使用的是哪种服务器语言? (正如其他人问的那样,为什么只有Safari?)
答案 1 :(得分:1)
答案 2 :(得分:1)
其他人已经注意到浏览器嗅探并不理想,但有些情况下,错误只发生在浏览器中并且很难检测到。在这种情况下,您可以执行浏览器嗅探并希望用户代理字符串有效。这就是Ext-JS的作用。
var ua = navigator.userAgent.toLowerCase();
var isChrome = /\bchrome\b/.test(ua);
var isSafari = !isChrome && /safari/.test(ua);
第62行视图来源:http://dev.sencha.com/deploy/dev/docs/source/Ext.html以易于阅读的格式检测Ext的所有浏览器。
这很脆弱,随着新版本和浏览器问世,可能无法正常工作。
告诉我们你为什么要测试野生动物园,所以我们可以确保没有更好的方法来实现你想要的。
答案 3 :(得分:1)
if(navigator.userAgent.toLowerCase().indexOf("safari") != -1 && navigator.userAgent.toLowerCase().indexOf("chrome") == -1){
// you code here
}