Javascript用户代理按浏览器版本号重定向

javascript user agent redirect by browser version number

本文关键字:版本号 重定向 浏览器 用户代理 Javascript      更新时间:2023-09-26

我们有一个聊天程序,目前只支持几个浏览器。因此,我插入一个用户代理重定向来管理消息传递,以通知用户为什么他们不能与不支持的浏览器聊天。

我遇到的问题是只有Firefox 3.1及以下,例如,支持Firefox。,但我下面的自定义脚本使所有Firefox版本兼容。只有Firefox 3.1兼容的解决方案是什么?

注意:我不打算像我的例子中看到的那样将它们发送到实际的浏览器网站。我放这些url只是为了举例。我计划有自定义重定向页面与友好的消息传递…

现有代码的演示:http://jsfiddle.net/evanmoore/4xr77/

代码如下:

<script type="text/javascript">
    if ((navigator.userAgent.indexOf('Firefox') != -1) || (navigator.userAgent.indexOf('MSIE') != -1)) 
    {
        // Your browser is supported for live chat
        document.location = "http://www.livechatinc.com/";
    }
    else if(navigator.userAgent.indexOf("Safari") != -1)
    {
        // Your Safari browser is not supported for live chat
        window.location = "http://www.apple.com";
    }
    else if(navigator.userAgent.indexOf("Chrome") != -1)
    {
        // Your Chrome browser is not supported for live chat
        window.location = "http://www.google.com/chrome";
    }
    else 
    {   // All others... Your browser is not supported for live chat
        window.location = "http://www.gofetch.com";
    }
</script>

根据Asad的评论,我在这里找到了不同的浏览器字符串,这使我能够像这样控制版本号…我想这应该能成功!

if ((navigator.userAgent.indexOf('Firefox/3.1') != -1) 

尝试检查功能是否存在,而不是浏览器的版本。
例如if (typeof foo != 'undefined')将检查foo是否存在
你可以在这里找到更多信息