zoukankan      html  css  js  c++  java
  • 灵活实用require.js,让JS加载速度更流畅

    当一个网页引入很多js文件,网页加载会变得很慢,并且js文件存在依赖性,有时候颠倒顺序就不能运行了,这很影响用户体验。

    require.js解决了异步加载,提高网页的加载,同时依赖顺序的js可以用数组排序。

    第一部加载require.js放到目录的js子目录下:

    <script src="js/require.js"></script>

    需要加一个参数 defer async="true" 表示这个文件需要异步加载 defer兼容IE版本


    需要加data-main="js/main" 表示js下的main.js是主要加载模块。工作时候一定要严谨。


    require()函数接受两个参数。第一个参数是一个数组,表示所依赖的模块,第二个是回到函数,当前面模块都加载成功后,它将被调用。

    //main.js:

    define(function (require,exports,module){
        exports.add = function (x,y){
          return x+y;
        }; 
    });

    //math.html:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="require/require.js"></script>
            <script>
                require(['main'], function (math){
                alert(math.add(1,1));
                  });
            </script>
        </head>
        <body>
        </body>
    </html>

    返回一个2,则成功弹出。

    一起调用

    //b.js:

    define(function (require,exports,module){
        exports.add = function (obj,oEv,show){
          return obj[addEventListener(oEv,show,false)]
        }; 
    });

    //math.html:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="require/require.js"></script>
            <script>
                var btn=document.getElementById('btn');
                function show(){
                    alert('弹出')
                }
                require(['main','main'], function (math){
                   math.add(btn,'click',show);
                    alert(math.add(1,1));
                  });
            </script>
        </head>
        <body>
        <button id="btn">提交</button>
        </body>
    </html>

    看玩此文,如果有什么不妥之处望请留言。

  • 相关阅读:
    图标工具箱
    第40课 程序的内存布局
    第39课 程序中的三国天下
    第38课 动态内存分配
    第37课 指针阅读技巧分析
    第36课 函数与指针分析
    第35课 数组参数和指针参数分析
    第34课 多维数组和多维指针
    第33课 main函数与命令行参数
    第32课 数组指针和指针数组分析
  • 原文地址:https://www.cnblogs.com/chw8/p/7050479.html
Copyright © 2011-2022 走看看