javascript - 在 IE8 中本地托管 Bootstrap/Jquery/HTML5Shiv 会破坏站点

标签 javascript jquery css twitter-bootstrap internet-explorer-8

我有一个使用 bootstrap 构建的网站,它在 IE8 中运行良好。然后我决定,为了让我的网站加载得更快一点,我将停止为 bootstrap/jquery 加载各种 .js.css 文件/html5shiv/etc 来自其他服务器并在本地托管它们。这样做破坏了我在 IE8 中的网站。在 IE8 中,我得到了类似于移动版本的东西。

知道我做错了什么吗?我应该能够在本地托管所有这些文件,对吧?

这是我最初在我的标签中有效的内容:

   <!-- Bootstrap core CSS -->



<link href="/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
  <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap-theme.min.css">

    <link href="/css/ffnv4.4.css" rel="stylesheet">

<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>


<script type="text/javascript">
     if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
        var msViewportStyle = document.createElement("style");
        msViewportStyle.appendChild(
            document.createTextNode(
                "@-ms-viewport{width:auto!important}"
            )
        );
        document.getElementsByTagName("head")[0].
            appendChild(msViewportStyle);
    }
</script>

这是不起作用的新代码:

    <!-- Bootstrap core CSS -->



<link href="<? echo CONTENT_SERVER; ?>/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
  <script src="<? echo CONTENT_SERVER; ?>/js/html5shiv.js"></script>
  <script src="<? echo CONTENT_SERVER; ?>/js/respond.min.js"></script>
<![endif]-->



        <link href="<? echo CONTENT_SERVER; ?>/css/ffnv4.4.css" rel="stylesheet">

<script type="text/javascript" src="<? echo CONTENT_SERVER; ?>/js/jquery.js"></script>
<script src="<? echo CONTENT_SERVER; ?>/bootstrap/js/bootstrap.js"></script>

<script type="text/javascript">
     if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
        var msViewportStyle = document.createElement("style");
        msViewportStyle.appendChild(
            document.createTextNode(
                "@-ms-viewport{width:auto!important}"
            )
        );
        document.getElementsByTagName("head")[0].
            appendChild(msViewportStyle);
    }
</script>

最佳答案

因为 Twitter Bootstrap 3 和 jquery 版本 2 没有放弃对 IE8 的支持。

关于javascript - 在 IE8 中本地托管 Bootstrap/Jquery/HTML5Shiv 会破坏站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23395569/

相关文章:

jquery - 在Jquery中添加图片源

javascript - 如何添加子 div 背景图像并应用于整个父部分

javascript - 鼠标悬停时更改字体,第二次悬停时恢复字体

javascript - 如何从常规网站调用 Chrome 扩展中定义的函数?

javascript - 强制拖动图 D3.js 错误

jquery - 解析 Twitter 的 JSON 结果时,indexOf 不起作用

html - Youtube 背景在 <body> 中拉伸(stretch)到高度和宽度

javascript - 将选项设置为 <select> 使用 jquery 和从 ajax 获取的值

javascript - Firebase数据库WEB获取JSON数据

jquery - 将鼠标悬停在 Sprite 内部时交换图像