代码拉取完成,页面将自动刷新
EasyImport.js 能给 传统网页、单页应用 提供有力的脚本异步加载、响应式适配、资源延迟加载支持,并且拥有这一切的过程也很平滑、自然 ——
<script />
加载页面中所有外置、内置 JavaScript 脚本
loading
通用 加载进度事件接口<img />
、<iframe />
延迟加载<head />
中,但却不阻塞页面其它部分的加载,代码结构清晰而又高性能
$(document).ready(function () {});
之类的大包装可以完全不需要了)[ ]
(数组字面量)或 { }
(对象字面量,v1.1+ 支持)括起来即可异步<img />
、<iframe />
的 src 属性替换为 data-src
即可被加载器识别<meta />
标签,让网页源码以标准而通用的简洁思维编写,自然地实施响应式设计
以下示例代码用 EasyImport.js v1.1+ 重构自《i飞扬 19期》的 HTML 源码 ——
<head>
......
<script type="text/javascript" src="./Libs/EasyImport.js"></script>
<script>
var old_PC = (! $.browser.modern);
ImportJS([
{
'jQuery.js': old_PC,
'jQuery2.js': $.browser.modern
},
{
'Turn.HTML4.js': old_PC,
'Turn.js': $.browser.modern,
'Smooth_Scroll.js': true,
'jPlayer.js': true,
'jQuery.Hammer.js': true,
'jQuery.PageZoomer.js': ($.browser.modern && (! $.browser.mobile)),
'Hover_Scroll.js': (! $.browser.mobile)
},
'FY_iWeBook.js'
], function () {
$('#iWB').iWeBook('#jPlayer_Box');
});
var duoshuoQuery= {short_name: 'fyscu'};
ImportJS( ['http://static.duoshuo.com/embed.js'] );
</script>
......
</head>
UNIX-Shell、Windows-CMD 通用脚本 ——
npm install -g requirejs
npm install -g uglify-js
mkdir ./EasyImport.js
git clone https://git.oschina.net/Tech_Query/EasyImport.js.git ./EasyImport.js
node r.js -o build/source.js
uglifyjs EasyImport.js -c -m -o EasyImport.min.js --source-map=EasyImport.min.map
我在做《i飞扬》电子杂志 HTML5 在线版的过程中,为了在不改变 Web 前端程序猿的编程思维习惯的前提下,保证整个 WebApp 的好用、可靠,自己开发了一个**【JavaScript 文件响应式异步加载器】**—— EasyImport.js。开始只是一段放在 HTML <head />
中的小脚本,没觉得是个多么复杂的东西。但随着应用的深入,要想做到自己定下的目标,代码不断地迭代,期间也因为严重的 Bug 而怀疑它的价值,所以有了后来的一次较大的局部重构。
但辛劳总会有收获 —— 个人更深刻地理解了 JavaScript、DOM 的一些细节,它本身也到了足够成熟的地步,作为几个线上实用项目的基础库,运行在很多人的浏览器中~
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。