如何在 HTML 标记之前加载 Javascript 函数?

科巴科

我有一个加载繁重的 Javascript 脚本,我注意到在较慢的配置中,脚本确实在 html 标记后加载,这使我的页面无法正常工作。

首先加载 javascript,然后加载 html 标记解决了我的问题。

我找到了简单的方法来做到这一点:

Javascript :

jQuery(document).ready(function ($) {
            $(window).load(function () {
                setTimeout(function(){
                    $('#preloader').fadeOut('slow', function () {
                    });
                },2000);

            });  
        });

html :

<div id="preloader"></div>
<p>EXEMPLE</p>

最后是 css :

#preloader {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    overflow: visible;
    background: #333 url('//cdnjs.cloudflare.com/ajax/libs/file-uploader/3.7.0/processing.gif') no-repeat center center;
}

http://jsfiddle.net/harshdand/593Lqqnm/2/

虽然它是jQuery。我想在 vanilla JS 中做同样的事情,因为我不精通 jQuery 并且出于性能原因。

有人可以以任何方式向我展示与脚本等效的 vanilla JS 或更好的方式吗?

贾斯珀自我

(document).ready一旦 DOM 完全加载您使用的就会被触发。在您的情况下,正如您所提到的,这意味着您的 JS 也已加载。

所以基本上你正在查看 DOM 以查看是否加载了 JS。我认为更好的解决方案是直接查看 JS,从中确定您可以删除预加载器。

但要回答你的问题,香草等价物可能是这样的:

根据youmightnotneedjquery.com,您可以用以下内容替换该(document).ready部分:

function ready(fn) {
  if (document.attachEvent ? document.readyState === "complete" : document.readyState !== "loading"){
    fn();
  } else {
    document.addEventListener('DOMContentLoaded', fn);
  }
}

您可以使用它来触发不透明度的 CSS 更改,并在不透明度动画完成后完全删除元素。

var target = document.getElementById('preloader');
target.style.opacity = '0';
setTimeout(function(){target.parentNode.removeChild(target);}, 1000);

为了使不透明度很好地消失,您需要在 CSS 中向预加载器添加过渡:

 -webkit-transition: opacity 1000ms linear;
 transition: opacity 1000ms linear;

只需确保 CSS 中的动画与 JS 中的超时时间相同。完整的代码是这样的:http : //jsfiddle.net/8ua69dbL/10/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我的JavaScript外部函数无法在HTML之前加载

来自分类Dev

如何在提交之前运行javascript函数?

来自分类Dev

Javascript:如何在 html 中调用 javascript 函数

来自分类Dev

如何将Javascript函数绑定到动态加载的HTML

来自分类Dev

如何在打印之前等待 HTML 文档加载/呈现(纯 JavaScript)

来自分类Dev

如何在JavaScript中加载HTML页面

来自分类Dev

Javascript/HTML:如何反转函数?

来自分类Dev

HTML标记之前的PHP函数打印

来自分类Dev

如何在JavaScript / jQuery函数中使用几个HTML元素?

来自分类Dev

如何在html.actionlink中仅调用javascript函数

来自分类Dev

如何在html文件中声明的javascript中调用函数

来自分类Dev

当HTML链接中的定位标记(#)被访问或重新加载时,调用javascript函数

来自分类Dev

如何在HTML JavaScript中调用mfc C ++函数以及如何在mfc C ++中调用JavaScript函数?

来自分类Dev

如何在初始页面加载时调用JavaScript函数

来自分类Dev

在 javascript 函数之前加载 jquery 下拉列表

来自分类Dev

如何在html文档之前加载加载脚本

来自分类Dev

如何在此javascript中使用html标记?

来自分类Dev

如何在JavaScript中获取HTML标记值(div)

来自分类Dev

如何在标记的HTML文本中添加JavaScript?

来自分类Dev

如何在JS中的eventListener之前加载生成dom函数

来自分类Dev

如何正确地为复选标记和按钮加载JavaScript函数?

来自分类Dev

如何使用HTML按钮调用javascript函数

来自分类Dev

如何使用JavaScript函数获取HTML值

来自分类Dev

如何在JavaScript函数中使用javascript变量作为html输入名称?

来自分类Dev

如何在html或Javascript中创建“首次加载”事件?

来自分类Dev

如何在HTML(PHP)文件中加载JavaScript文件

来自分类Dev

如何在HTML元素加载到页面之前隐藏它们

来自分类Dev

如何使用onchange函数选择JavaScript标记

来自分类Dev

如何在加载javascript之前格式化网页

Related 相关文章

  1. 1

    我的JavaScript外部函数无法在HTML之前加载

  2. 2

    如何在提交之前运行javascript函数?

  3. 3

    Javascript:如何在 html 中调用 javascript 函数

  4. 4

    如何将Javascript函数绑定到动态加载的HTML

  5. 5

    如何在打印之前等待 HTML 文档加载/呈现(纯 JavaScript)

  6. 6

    如何在JavaScript中加载HTML页面

  7. 7

    Javascript/HTML:如何反转函数?

  8. 8

    HTML标记之前的PHP函数打印

  9. 9

    如何在JavaScript / jQuery函数中使用几个HTML元素?

  10. 10

    如何在html.actionlink中仅调用javascript函数

  11. 11

    如何在html文件中声明的javascript中调用函数

  12. 12

    当HTML链接中的定位标记(#)被访问或重新加载时,调用javascript函数

  13. 13

    如何在HTML JavaScript中调用mfc C ++函数以及如何在mfc C ++中调用JavaScript函数?

  14. 14

    如何在初始页面加载时调用JavaScript函数

  15. 15

    在 javascript 函数之前加载 jquery 下拉列表

  16. 16

    如何在html文档之前加载加载脚本

  17. 17

    如何在此javascript中使用html标记?

  18. 18

    如何在JavaScript中获取HTML标记值(div)

  19. 19

    如何在标记的HTML文本中添加JavaScript?

  20. 20

    如何在JS中的eventListener之前加载生成dom函数

  21. 21

    如何正确地为复选标记和按钮加载JavaScript函数?

  22. 22

    如何使用HTML按钮调用javascript函数

  23. 23

    如何使用JavaScript函数获取HTML值

  24. 24

    如何在JavaScript函数中使用javascript变量作为html输入名称?

  25. 25

    如何在html或Javascript中创建“首次加载”事件?

  26. 26

    如何在HTML(PHP)文件中加载JavaScript文件

  27. 27

    如何在HTML元素加载到页面之前隐藏它们

  28. 28

    如何使用onchange函数选择JavaScript标记

  29. 29

    如何在加载javascript之前格式化网页

热门标签

归档