├── .gitignore ├── README ├── README.md ├── demo-files ├── a.js ├── b.js ├── c.js ├── d.js ├── e.js ├── f.js ├── g.css └── h.css ├── in-demo.html ├── in-min.js └── in.js /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .idea/ 3 | .ipr 4 | .iws 5 | *~ 6 | ~* 7 | *.diff 8 | *.patch 9 | *.bak 10 | .DS_Store 11 | Thumbs.db 12 | .project 13 | .*proj 14 | .svn/ 15 | *.swp 16 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | _____ 2 | |_ _| 3 | | | _ __ 4 | | | | '_ \ 5 | _| |_| | | | 6 | |_____|_| |_| v0.1.8 build 110428120728 7 | 8 | About the author 9 | --------------------- 10 | 11 | Guokai,1988-08-08 12 | Beijing - Chaoyang 13 | [Benben Blog](http://benben.cc/) 14 | 15 | Overview the In.js 16 | ----------------------- 17 | 18 | Author: Guokai 19 | Email/Gtalk: badkaikai@gmail.com 20 | Create Datetime: 2011-04-28 21 | Last Update: 2012-07-28 22 | Namespace: window.In 23 | Description: this a light framework that can manage dependency of the modules, 24 | most important,you can load them on-demand,asynchronous and multi-threaded... 25 | License: Apache License,Version 2.0 26 | 27 | Usage: 28 | ----------- 29 | 30 | In.add('mod1',{path:'url',type:'js',charset:'utf-8',rely:['mod2','mod3']}); 31 | In.use('mod1','mod2','mod3',function() {}); 32 | In('mod1','mod2','mod3',function() {}); -> short for In.use() 33 | In.ready('mod1','mod2','mod3',function() {}); 34 | In.later(3000,'mod1','mod2','mod3',function() {}); 35 | In.css(inline-css); 36 | In.config(name,value); 37 | 38 | Release: 39 | ------------- 40 | 41 | Version: 0.2.0 42 | Build: 110428120728 43 | 44 | Examples: 45 | -------------- 46 | 47 | *1、import In.js to your webpage* 48 | 49 | 例如:底层框架为jQuery 1.5.2-min.js,并引用in时自动加载。 50 | 51 | 52 | 53 | *2、In.add()* 54 | 55 | 加载三个待执行的javascript模块,分别为mod1、mod2、mod3,其中mod2依赖于mod3. 56 | 57 | 62 | 63 | *3、In() or In.use()* 64 | 65 | 旧版本队列内为顺序加载,如需向后兼容,请事先配置In.config('serial',true)更换为默认串行加载,新版本的队列默认为并行执行,队列中最后一个函数被视为回调函数,下面的代码会并行加载mod1,mod2,function,并立即执行,三者均加载完毕后执行回调函数。 66 | 67 | 75 | 76 | *4、In.ready()* 77 | 78 | domReady之后加载队列 79 | 80 | 85 | 86 | *5、In.later()* 87 | 88 | 延迟加载队列 89 | 90 | 96 | 97 | *6、In.css()* 98 | 99 | 动态注入CSS 100 | 101 | 104 | 105 | *7、In.config()* 106 | 107 | 配置函数 108 | 109 | 115 | 116 | 117 | --------------------历史文档-------------------- 118 | 119 | 120 | _____ 121 | |_ _| 122 | | | _ __ 123 | | | | '_ \ 124 | _| |_| | | | 125 | |_____|_| |_| v0.12 build 110723 126 | 127 | About the author 128 | --------------------- 129 | 130 | Guokai,1988-08-08 131 | Beijing - Chaoyang 132 | http://benben.cc/ 133 | 134 | Overview the In.js 135 | ----------------------- 136 | 137 | Author: Guokai 138 | Email/Gtalk: badkaikai@gmail.com 139 | Create Datetime: 2011-04-28 140 | Namespace: window.In 141 | Description: this a light framework that can manage dependency of the modules, 142 | most important,you can load them on-demand,asynchronous and multi-threaded... 143 | License: Apache License,Version 2.0 144 | 145 | Usage: 146 | ----------- 147 | 148 | In.add('name',{path:'url here',type:'js',charset:'utf-8',rely:['a','b']}); 149 | In.exe('name','a','b',function() {...}); 150 | In('name','a','b',function() {...}); -> recommended usage equivalent to In.exe() 151 | In.ready('name','a','b',function() {...}); 152 | In.watch(o,'p',function(prop,old,new) {...}); 153 | In.unwatch(o,'p'); 154 | 155 | Release: 156 | ------------- 157 | 158 | Version: 0.12 159 | Build: 110723 160 | 161 | ************************************************************************** 162 | 163 | 使用示例: 164 | -------------- 165 | 166 | 1、import In.js to your webpage 167 | 168 | 例如:底层框架为jQuery 1.5.2-min.js,并引用in时自动加载。 169 | 170 | 171 | 172 | *2、In.add()* 173 | 174 | 加载三个待执行的javascript模块,分别为mod1、mod2、mod3,其中mod2依赖于mod3. 175 | 176 | 181 | 182 | *3、In() or In.exe()* 183 | 184 | 顺序执行mod1,mod2,function,立即执行 185 | 186 | 196 | 197 | *4、In.ready()* 198 | 199 | domReady之后加载队列 200 | 201 | 206 | 207 | *5、In.watch()* 208 | 209 | 监视某一变量值 210 | 211 | 224 | 225 | *6、In.unwatch()* 226 | 227 | 取消对某一变量的监视 228 | 229 | 232 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 | _____ 3 | |_ _| 4 | | | _ __ 5 | | | | '_ \ 6 | _| |_| | | | 7 | |_____|_| |_| v0.2.0 build 110428120728 8 |9 | 10 | About the author 11 | --------------------- 12 | 13 |
14 | Guokai,1988-08-08 15 | Beijing - Chaoyang 16 | [Benben Blog](http://benben.cc/) 17 |18 | 19 | Overview the In.js 20 | ----------------------- 21 | 22 |
23 | Author: Guokai 24 | Email/Gtalk: badkaikai@gmail.com 25 | Create Datetime: 2011-04-28 26 | Last Update: 2012-07-28 27 | Namespace: window.In 28 | Description: this a light framework that can manage dependency of the modules, 29 | most important,you can load them on-demand,asynchronous and multi-threaded... 30 | License: Apache License,Version 2.0 31 |32 | 33 | Usage: 34 | ----------- 35 | 36 |
37 | In.add('mod1',{path:'url',type:'js',charset:'utf-8',rely:['mod2','mod3']});
38 | In.use('mod1','mod2','mod3',function() {});
39 | In('mod1','mod2','mod3',function() {}); -> short for In.use()
40 | In.ready('mod1','mod2','mod3',function() {});
41 | In.later(3000,'mod1','mod2','mod3',function() {});
42 | In.css(inline-css);
43 | In.config(name,value);
44 |
45 |
46 | Release:
47 | -------------
48 |
49 | 50 | Version: 0.2.0 51 | Build: 110428120728 52 |53 | 54 | Examples: 55 | -------------- 56 | 57 | *1、import In.js to your webpage* 58 | 59 | 例如:底层框架为jQuery 1.5.2-min.js,并引用in时自动加载。 60 | 61 |
62 | <script type="text/javascript" src="in.js" autoload="true" core="jquery 1.5.2-min.js"></script> 63 |64 | 65 | *2、In.add()* 66 | 67 | 加载三个待执行的javascript模块,分别为mod1、mod2、mod3,其中mod2依赖于mod3. 68 | 69 |
70 | <script type="text/javascript"> 71 | In.add('mod1',{path:'mod1.js',type:'js',charset:'utf-8'}); 72 | In.add('mod2',{path:'mod2.js',type:'js',charset:'utf-8',rely:['mod3']}); 73 | In.add('mod3',{path:'mod3.js',type:'js',charset:'utf-8'}); 74 | </script> 75 |76 | 77 | *3、In() or In.use()* 78 | 79 | 旧版本队列内为顺序加载,如需向后兼容,请事先配置In.config('serial',true)更换为默认串行加载,新版本的队列默认为并行执行,队列中最后一个函数被视为回调函数,下面的代码会并行加载mod1,mod2,function,并立即执行,三者均加载完毕后执行回调函数。 80 | 81 |
82 | <script type="text/javascript"> 83 | //真正的加载顺序为 mod1 || mod2 || function -> function[callback] 84 | var demo=In('mod1','mod2',function() { 85 | console.log('我跟mod1和mod2是并行的关系'); 86 | },function() { 87 | console.log('我是回调函数,他们都加载完毕才会触发我'); 88 | }); 89 | </script> 90 |91 | 92 | *4、In.ready()* 93 | 94 | domReady之后加载队列 95 | 96 |
97 | <script type="text/javascript"> 98 | In.ready('mod1','mod2',function() { 99 | console.log($); 100 | }); 101 | </script> 102 |103 | 104 | *5、In.later()* 105 | 106 | 延迟加载队列 107 | 108 |
109 | <script type="text/javascript"> 110 | //延迟3秒加载队列 111 | In.later(3000,'mod1','mod2',function() { 112 | console.log($); 113 | }); 114 | </script> 115 |116 | 117 | *6、In.css()* 118 | 119 | 动态注入CSS 120 | 121 |
122 | <script type="text/javascript"> 123 | In.css('body {background:yellow}'); 124 | </script> 125 |126 | 127 | *7、In.config()* 128 | 129 | 配置函数 130 | 131 |
132 | <script type="text/javascript"> 133 | //设置为串行加载模式,兼容旧的写法 134 | In.config('serial',true); 135 | //设置核心库,核心库会被所有模块依赖 136 | In.config('core','jquery 1.5.2-min.js'); 137 | </script> 138 |139 | -------------------------------------------------------------------------------- /demo-files/a.js: -------------------------------------------------------------------------------- 1 | alert('a'); 2 | //alert(inner); 3 | alert(window.inner); 4 | var test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test'; 5 | alert('a end'); -------------------------------------------------------------------------------- /demo-files/b.js: -------------------------------------------------------------------------------- 1 | alert('b'); 2 | var test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test'; 3 | alert('b end'); -------------------------------------------------------------------------------- /demo-files/c.js: -------------------------------------------------------------------------------- 1 | alert('c'); 2 | alert(me); 3 | var test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test'; 4 | alert('c end'); -------------------------------------------------------------------------------- /demo-files/d.js: -------------------------------------------------------------------------------- 1 | alert('d'); 2 | //alert(inner); 3 | alert(window.inner); 4 | var test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test';test='test'; 5 | alert('d end'); -------------------------------------------------------------------------------- /demo-files/e.js: -------------------------------------------------------------------------------- 1 | //$(body).append('test jquery!!!!'); 2 | alert('e'); 3 | alert('e.js:!!!!'+$); 4 | alert('e end'); -------------------------------------------------------------------------------- /demo-files/f.js: -------------------------------------------------------------------------------- 1 | alert('f'); 2 | alert(test); 3 | var me='c rely on f!'; 4 | //alert(window.num); 5 | alert('f end'); -------------------------------------------------------------------------------- /demo-files/g.css: -------------------------------------------------------------------------------- 1 | body { 2 | background:silver; 3 | } -------------------------------------------------------------------------------- /demo-files/h.css: -------------------------------------------------------------------------------- 1 | body { 2 | background:gray; 3 | } -------------------------------------------------------------------------------- /in-demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |