1

在开发前端实时 javascript 应用程序时,我们决定放弃对旧浏览器的支持,因为支持它们需要付出太多努力。

我们应该在 HTML 中添加什么标头或 javascript,以便当他们点击 URL 时,我可以在继续我们的应用程序之前重定向一个页面以获取更新的浏览器?

4

3 回答 3

2

您可以使用导航器对象的以下属性

 navigator.appCodeName 
 navigator.appName 
 navigator.appVersion
 navigator.cookieEnabled 
navigator.platform 
 navigator.userAgent 

您还可以使用 jquery 浏览器对象 http://api.jquery.com/jQuery.browser/

于 2012-08-14T04:49:57.893 回答
1

更好的选择是使用特征检测。例如,要测试浏览器是否支持地理位置,可以使用以下命令:

if (navigator.geolocation)
{
    // interact with geolocation features
}


但是,如果您坚持使用浏览器检测,则可以使用以下方法检测浏览器是否使用 IE 8 或更低版本:

function getInternetExplorerVersion()
// Returns the version of Windows Internet Explorer or a -1
// (indicating the use of another browser).
{
   var rv = -1; // Return value assumes failure.
   if (navigator.appName == 'Microsoft Internet Explorer')
   {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null)
         rv = parseFloat( RegExp.$1 );
   }
   return rv;
}

var ver = getInternetExplorerVersion(); // example: 8.0
var belowIE8 = ver <= 8.0;

在这里找到:http ://www.mkyong.com/javascript/how-to-detect-ie-version-using-javascript/

于 2012-08-14T04:49:59.630 回答
0

如果您想根据特定的 JavaScript 版本确定这一点,请参见下面的代码(未经测试):

<script language="javascript1.5">
var supported = true;
</script>
<script>
if ('undefined' === typeof supported) {
    alert('not at least 1.5 supported');
}

不过,进行特征检测仍然更好,因为这与您将要使用它的目的更好地联系起来。

于 2012-08-14T04:48:38.423 回答