javascript - 如何检测 IE8 并显示页面或警报

标签 javascript jquery html internet-explorer-8 jekyll

我有一个使用 Jekyll 构建的网站。它在 IE 8 中无法正确呈现,因此,我想要一种方法来检测他们是否使用 IE 8 并显示适当的页面/警报。

我有一个函数可以检测浏览器并替换显示的页面:

"use strict";
define([], function () {
    function ieVersion() {
        var myNav = navigator.userAgent.toLowerCase();
        return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : -1;
    }
    var v = ieVersion();
    if (ieVersion() > -1) {
        document.location.replace("ie8.html");
    }
});

我在 HEAD 标签中调用它:

<!DOCTYPE html>
<html class='no-js' lang='en'>
    <head>
      <meta charset="utf-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
      <title>{{ page.title }}</title>
      <meta content='width=device-width, initial-scale=1.0' name='viewport'>
      <link href='http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic|Droid+Serif:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
      <link href='{{ site.url }}/css/framework.css' rel='stylesheet'>
      <link href='{{ site.url }}/css/syntax.css' rel='stylesheet'>
      <link href='{{ site.url }}/css/style.css' rel='stylesheet'>
      <link href='{{ site.url }}/css/fontello.css' rel='stylesheet'>

      <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
      <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
      <script src='{{ site.url }}/js/IE.js'></script>
      <script src='{{ site.url }}/js/modernizr.js'></script>

    </head>

但是,它似乎不起作用。

我在 IE8 中打开它,出现错误:

'$' is undefined 
IE.js

最佳答案

或者,您可以使用这个:

if (IE10orBelow() < 9) {
  alert('damn!');
}else{
  document.body.innerHTML = "you're safe";
  }

function IE10orBelow() {
  var ua = window.navigator.userAgent;
  var msie = ua.indexOf('MSIE ');
  if (msie > 0) {
    // IE 10 or older => return version number
    return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
  }
}

关于javascript - 如何检测 IE8 并显示页面或警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35453894/

相关文章:

html - 标题中的链接不起作用

javascript - 如何在 redux 中强制执行数据约束

javascript - 刷新后保持在同一选项卡上(选项卡中的选项卡)

javascript - 将点击分配给循环函数中的元素

javascript - 滚动条不会在页面上更新

html - 为什么我的 css slider 不能在 chrome 中工作,但在 IE 和 Fifox 中工作

html - 如果背景图片存在则插入 div

javascript - 根据另一个属性的升序对已排序的对象数组进行排序

javascript - 使用 X 类 JavaScript 更改所有链接的颜色

javascript - 文本框在打字时失去焦点