gpt4 book ai didi

javascript - 如何确保IE8中javascript的加载顺序在body标签结束之前

转载 作者:行者123 更新时间:2023-11-28 11:02:32 26 4
gpt4 key购买 nike

为了优化我的网站以提高 Google 页面速度,我在正文标记末尾插入了 js 文件,这样它们就不会延迟网站的渲染。这在所有现代浏览器中都可以正常工作 - 在版本 9 之前的 IE 中也是如此。

我嵌入脚本的 html 如下所示:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript" src="scripts/init.min.js"></script>
</body>
</html>

我已经通过 Saucelabs 测试了该网站,以检查它是否可以在旧版 Internet-Explorer 8 中运行。

令人惊讶的是,在 IE 8 中我收到了一条错误消息。我意识到,这个错误是造成的,因为我的自托管 JavaScript 是在 Google 托管的 jquery 加载之前执行的 - 尽管事实上,我首先链接了 jquery,如上所示。当我自己托管 jquery 并直接在 jquery 文件末尾复制脚本以减少 http 请求时,错误消息消失了,一切正常。

现在我的问题是:我是否遗漏了有关脚本加载顺序的内容,或者是否还有其他原因导致 IE8 无法从 google 加载 jquery?实际上,我想依赖 jquery 的 CDN 版本,因为不可能在我的服务器上激活压缩,而且 jquery 是相当大的数据 block 。顺便说一句,该问题仅出现在 Windows XP 下的 IE8 中 - 在 Windows 7 下的 IE8 中,上述解决方案似乎也可以正常工作。

最佳答案

好吧,实际上我不明白到底是什么导致了这个问题,但我找到了一个干净的解决方案:正如 @Pointy 正确建议的那样,问题是 jquery 根本没有加载。我设法通过将链接从“https”更改为“http”来解决此问题。

来自:

    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>

进入:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>

现在一切正常。

我希望这个答案能帮助人们节省一些时间。也许有人可以详细解释为什么需要进行此修改。

关于javascript - 如何确保IE8中javascript的加载顺序在body标签结束之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33375806/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com