1

我目前正在寻求通过确保在 javascript 之前下载公司徽标来改善对 Web 应用程序的感知。

为此,我将 javascript 引用移到了img公司徽标元素下方。

例如:

<img src="/Images/Logo.jpg" alt="My Company"/>
<script type="/Scripts/MyScripts.js"></script>

在查看 Google Chrome 开发人员工具时,我可以看到对徽标的调用已完成,但在页面上的所有 javascript 都已下载之前,它仍处于“待处理”状态。

为什么会这样?如何确保在 javascript 之前加载公司徽标?

4

2 回答 2

1

$(window).load如果您使用 jQuery,请尝试使用您的脚本。

$( window).load(function() {
    //put js code here
});

根据这个网站

窗口加载事件在整个页面完全加载后执行,包括所有框架、对象和图像。因此,涉及图像或其他页面内容的函数应放置在窗口或内容标签本身的加载事件中。

至于必须使用 . 添加到站点的单独文件<script src='path/to/file'>,我建议使用$.getScript.

$.getScript("path/to/file");

这是$.getScript 手册

于 2015-02-26T09:25:43.090 回答
0

浏览器必须在 HTML 标记解析过程中一出现 JS 文件就下载并执行(至少由于document.write在脚本中可能使用)。

最好的解决方案之一是添加onload事件处理程序,当页面准备好时动态加载脚本:

<script type="text/javascript">
window.addEventListener("load",function () {
    var elem = document.createElement("script");
    element.src = "file.js";
    document.body.appendChild(element);
, false);
</script>
于 2015-02-26T10:05:30.470 回答