在Javascript中,如何确定我当前的浏览器是否是计算机上的Firefox与其他所有浏览器?

TIM*_*MEX 42 javascript jquery

if(firefox and is on a computer){
alert('using firefox on a computer')
}else{
alert("using something else!");
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Jam*_*man 53

您所追求的是浏览器检测:

if ($.browser.mozilla) { ... 
Run Code Online (Sandbox Code Playgroud)

但是,不鼓励浏览器嗅探,因为它很容易欺骗用户代理,即伪装成另一个浏览器!

您最好以自己的方式或通过jQuery.support界面使用功能检测:http://api.jquery.com/jQuery.support/

这是一篇关于扩展它以供自己使用的文章:http: //www.waytoocrowded.com/2009/03/14/jquery-supportminheight/

编辑:

发现这篇文章也有帮助:当IE8不是IE8时,$ .browser.version是什么?

  • 这是从最新的jQuery中折旧并删除的 (7认同)
  • 你的意思是灰心?;)+1进行功能检测,请按“正确方式”进行操作:http://www.nczonline.net/blog/2009/12/29/feature-detection-is-not-browser-detection/ (2认同)
  • 我不同意你的“正确方式”。欺骗用户代理不是出于邪恶目的,而是为了解决开发人员的错误。所以最好相信用户希望你认为他是什么......他比你有更好的理由 (2认同)
  • 它输出:"TypeError:$ .browser is undefined",因为此属性已从最新版本的jQuery中删除. (2认同)

Fay*_*Ali 39

我正在做一些像下面这样的事情;

function checkBrowser(){
    c = navigator.userAgent.search("Chrome");
    f = navigator.userAgent.search("Firefox");
    m8 = navigator.userAgent.search("MSIE 8.0");
    m9 = navigator.userAgent.search("MSIE 9.0");
    if (c > -1) {
        browser = "Chrome";
    } else if (f > -1) {
        browser = "Firefox";
    } else if (m9 > -1) {
        browser ="MSIE 9.0";
    } else if (m8 > -1) {
        browser ="MSIE 8.0";
    }
    return browser;
}
Run Code Online (Sandbox Code Playgroud)


poo*_*poo 13

像这样:检查Firefox.或者其他一些浏览器.

 window.onload = function() {
          //  alert(navigator.userAgent);
            if (navigator.userAgent.indexOf("Firefox") > 0) {
                alert("ff");
            }
        }
Run Code Online (Sandbox Code Playgroud)


Dav*_*tro 6

if (navigator.userAgent.indexOf("Firefox") != -1) {

 //some specific code for Mozilla

 }
Run Code Online (Sandbox Code Playgroud)