1 Star 0 Fork 3

trump/uetjs

forked from PESCMS/uetjs 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
index.html 9.84 KB
一键复制 编辑 原始数据 按行查看 历史
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Access-Control-Allow-Origin" content="*">
<title>uetjs</title>
<!--加载js骨架文件-->
<script src="uet.js"></script>
<script>
/* 加载样式文件 */
loadStyle({
Style:{
name: 'style'
},
shCore:{
path: './syntax/styles/',
name: 'shCore'
},
shThemeDefault:{
path: './syntax/styles/',
name: 'shThemeDefault'
}
})
/* 加载JS文件 */
loadScript({
jQuery: {
version: "?v=1.8",
name: 'jquery-1.8.3.min'
},
syntax:{
path: './syntax/scripts/',
name: 'brush'
},
Common:{
path: './Home/',
name: 'Common'
}
});
uetjs.snippets = function(){
$(function(){
$("h1").append('\<span style="color:#FF0000">这是后面加进来的</span>');
})
}
</script>
</head>
<body>
<div id="main">
<div id="main-inner">
<div id="article-title">
<a href="/">Uetjs</a>
</div>
<div id="article-meta">
当前版本 1.2 | 发布于 2014-03-15 | 作者 lazyphp | 页面模板来源 <a href="https://github.com/ericzhang-cn/papery" target="_blank">GIT</a>
</div>
<div id="article-content">
<h1>前言</h1>
<h2>这是什么?</h2>
<p>Uetjs是一款用于统一加载和管理 CSS文件/JS文件的JavaScript库。<br />
经测试,兼容目前市面上所有浏览器:IE6-IE11,Chrome,Firefox, Opear。且不依赖任何第三方JavaScript库,纯原生态,下载即可马上使用。</p>
<h2 >为什么要写?</h2>
<p>日常工作中,我经常与前端打交道。发现公司前端给出的页面代码,CSS文件和JS文件混乱不堪。平时自己做开发时,也经常为JS代码片段混乱而感到头痛。为此我一直在思考,可不可以把PHP的框架思想沿用到JS去呢?这就是Uetjs诞生的原因。</p>
<h1>传统开发 与 Uetjs开发</h1>
<p>目前有一个项目,用到一下文件。 jQuery库,slideshow.js, slideshow调用的代码片段。分别在A页面和B页面</p>
<h2>传统开发</h2>
<p>A-Html代码</p>
<pre class="brush:html">
&lt;head&gt;
&lt;script src="jQuery.js"&gt;&lt;/script&gt;
&lt;script src="slideshow.js"&gt;&lt;/script&gt;
&lt;script&gt;
$("#slideshow").show({
&lt;!--这里要实现一个反转切换--&gt;
})
&lt;/script&gt;
&lt;/head&gt;
&lt;div id="slideshow"&gt;
&lt;!--忽略基础代码--&gt;
&lt;/div&gt;
</pre>
<p>B-Html代码</p>
<pre class="brush:html">
&lt;head&gt;
&lt;script src="jQuery.js"&gt;&lt;/script&gt;
&lt;script src="slideshow.js"&gt;&lt;/script&gt;
&lt;script&gt;
$("#slideshow").show({
&lt;!--这里要实现一个鼠标移动切换--&gt;
})
&lt;/script&gt;
&lt;/head&gt;
&lt;div id="slideshow"&gt;
&lt;!--忽略基础代码--&gt;
&lt;/div&gt;
</pre>
<p>上面的代码片段是许多公司前端都会给出的典型示例(目前我就职过3家公司都是这样)。当代码交到后端(PHP)处理时,通常作如何处理:</p>
<ol>
<li>保留页面的布局,不作任何优化。若有变化再翻查对应的模板进行修正</li>
<li>将JS的代码片段保存于名为common.js的文件。再调整HTML的标签结构</li>
</ol>
<p>针对上面两种选择:<br />
第一种方案,随着项目的壮大。模板文件越来越多,这时候每个模板文件,不仅仅只有HTML+JS两种语言,还有PHP/其他语言代码夹在里面,维护的成本变得巨大了。更致命的是,原本负责的同事离职了,接手的同事短时间很难把项目每一块消化下去<br/>
第二种方案,相对第一种来说,提高了代码的可维护性。但难以避免的是,每次加入新的代码片段,都得确保common.js中没有重复绑定事件的标签或者方法存在。其次,还要调整页面的元素标签,这会涉及到样式文件的调整。时间一来一回难免消耗不少。
</p>
<h2>Uetjs开发</h2>
<p>使用Uetjs开发,页面开发将变得非常轻松。下面给出的是结合了后端处理的代码片段。</p>
<p>提出出来的公用模板: Head.html</p>
<pre class="brush:html">
&lt;head&gt;
&lt;script src="uet.js"&gt;&lt;/script&gt;
&lt;script&gt;
loadScript({
&lt;!--加载jQuery库--&gt;
jQuery: {
version: "?v=1.8",
path: './js/',
name: 'jquery-1.8.3.min'
},
&lt;!--加载Slideshow库--&gt;
Slideshow:{
path: './js/',
name: 'Slideshow'
},
&lt;!--加载对应页面的JS代码片段--&gt;
File:{
path: './Theme/Home/js/<&lt;?=$theme;?&gt;',
name: '&lt;?=$model?&gt;_&lt;?=$action;?&gt;'
}
});
&lt;/script&gt;
&lt;/head&gt;
</pre>
<p>根据PHP处理,会在/Theme/Home/js/主题名称/ 目录下存放对应的JS代码片段: </p>
<p>Index_index.js</p>
<pre class="brush:js">
$("#slideshow").show({
/* 这里要实现一个反转切换 */;
})
</pre>
<p>Product_list.js</p>
<pre class="brush:js">
$("#slideshow").show({
/* 这里要实现一个鼠标移动切换 */;
})
</pre>
<p>使用Uetjs后,不需要对页面的元素标签作任何处理,仅需将对应的JS代码片段存放于对应的目录。</p>
<h1>使用Uetjs</h1>
<p>友情提示:由于作者能力有限,目前Uetjs无法使用异步加载。若开启异步加载,可能会导致JS的依赖关系出问题。</p>
<h2>下载Uetjs</h2>
<p>本地下载地址:<a href="/uetjs.zip" target="_blank">下载</a></p>
<p>GIT地址: <a href="http://git.oschina.net/fallBirds/uetjs" target="_blank">开源中国</a> </p>
<h2>快速入门</h2>
<p>uetjs函数仅有三个!分别是:loadScript (加载JS) ,loadStyle (加载css) ,require(手动加载),示例代码如下:</p>
<pre class="brush:js">
/* 引入uetjs库 */
&lt;script src="uet.js"&gt;&lt;/script&gt;
&lt;script&gt;
/* 加载样式文件 */
loadStyle({
Style:{
name: 'style'
},
shCore:{
path: './syntax/styles/',
name: 'shCore'
},
shThemeDefault:{
path: './syntax/styles/',
name: 'shThemeDefault'
}
})
/* 加载JS文件 */
loadScript({
jQuery: {
version: "?v=1.8",
name: 'jquery-1.8.3.min'
},
syntax:{
path: './syntax/scripts/',
name: 'brush'
},
Common:{
path: './Home/',
name: 'Common'
},
File:{
path: './Home/',
name: 'Test_index'
}
});
&lt;/script&gt;
</pre>
<p>示例中,loadScript和loadStyle 函数传参必须为<font color="red">二维数组</font>!具体细节将在下面作说明。</p>
<h2>函数loadScript和loadStyle</h2>
<p>函数loadScript和loadStyle两者的代码基本相同,传参必须为二维数组。其中,二维数组的值,请按照一下的进行填写调用:</p>
<pre class="brush:js">
loadScript/loadStyle({
/* 数组名称,必须唯一。建议以调用文件名称作为键值。 */
array:{
/* 加载文件的版本号。| 缺省值为 uet 默认版本号 | 选填 */
version: '',
/* 加载文件所在的目录。 | 缺省值为 '' | 选填 */
path: '',
/* 加载文件的名称,不带后缀。 | 必填项 */
name: ''
}
})
</pre>
<h2>函数require</h2>
<p>函数require用于加载文件,有两个参数,具体说明如下:</p>
<pre class="brush:js">
/* url: 加载的文件地址 */
/* type: 加载文件的类型 | 缺省值: script; 必须为 link(CSS Style) 或者 script(JavaScript) */
require(url, type);
</pre>
</div>
</div>
</div>
<div id="footer">
<div id="footer-inner">
<p id="copyright">Copyright (c) 2014 Uetjs </p>
</div>
</div>
</body>
</html>
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/huanongying/uetjs.git
git@gitee.com:huanongying/uetjs.git
huanongying
uetjs
uetjs
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385