首页 > Web开发 > 详细

在 RequireJS 之前预先装载某些代码块

时间:2014-03-14 06:54:13      阅读:474      评论:0      收藏:0      [点我收藏+]

接着上一篇文章:http://blog.csdn.net/joyhen/article/details/21166757

<script>var __funcList = []; var _run = function (aFunc) { __funcList.push(aFunc); }; var require = { urlArgs: ‘v=2001.13‘ };</script>
页面源码中有很多的添加执行的js模块,如下:
<script>
_run( function() {
    require( ["wojilu.core.sitetop"], function( topnav ) {
        topnav.init(‘/layouts/topnav/nav‘, ‘/main/checklogin‘, ‘/register/register‘, ‘/common/resetpwd/stepone‘);
    });
});
</script>
<script>_run(function () { wojilu.ui.slider(); }); </script>
<script>
    _run(function () {
        require([‘wojilu.app.content‘], function (x) {
            x.mergeSection();
            x.bindSendButton(‘/content396/submit/post/index‘);
        });
    });
</script>
<script>
    _run(function () {
        require([‘wojilu.core.base‘], function (x) { x.customSkin().backTop(); });
    });
</script>
目的只有一个,就是将所有要执行的js模块推入到__funcList对象中,然后会在RequireJS的main.js中执行:

注意这一句:

<script data-main="http://static.wojilu.com/js/main" src="http://static.wojilu.com/js/lib/require-jquery-wojilu.js?v=2001.13"></script>
我们看看http://static.wojilu.com/js/main.js的js具体是什么:

require(["lib/bootstrap-dropdown"], function() { 
        
    $(function() {
        for( var i=0;i<__funcList.length;i++) {
             __funcList[i]();
        }
    }); 

});
而jquer库也被放在了和requirejs一起(当然,这里面作者另行封装了一些其它方法),可以打开这个里面看到:

http://static.wojilu.com/js/lib/require-jquery-wojilu.js?v=2001.13






在 RequireJS 之前预先装载某些代码块,布布扣,bubuko.com

在 RequireJS 之前预先装载某些代码块

原文:http://blog.csdn.net/joyhen/article/details/21173283

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!