This commit is contained in:
sentsin
2018-01-03 09:55:45 +08:00
parent 2ee10f2ea5
commit e8aaa43122
45 changed files with 621 additions and 208 deletions

View File

@@ -61,6 +61,291 @@ a cite{font-style: normal; *cursor:pointer;}
-moz-osx-font-smoothing: grayscale;
}
/* 临时 */
.layui-icon-duihua:before { content: "\e611"; }
.layui-icon-shezhi:before { content: "\e614"; }
.layui-icon-yinshenim:before { content: "\e60f"; }
.layui-icon-search:before { content: "\e615"; }
.layui-icon-fenxiang1:before { content: "\e641"; }
.layui-icon-shezhi1:before { content: "\e620"; }
.layui-icon-yinqing:before { content: "\e628"; }
.layui-icon-yuejuancuohao:before { content: "\1006"; }
.layui-icon-cuo:before { content: "\1007"; }
.layui-icon-baobiao:before { content: "\e629"; }
.layui-icon-star:before { content: "\e600"; }
.layui-icon-yuandian:before { content: "\e617"; }
.layui-icon-chat:before { content: "\e606"; }
.layui-icon-logo:before { content: "\e609"; }
.layui-icon-list:before { content: "\e60a"; }
.layui-icon-tubiao:before { content: "\e62c"; }
.layui-icon-right:before { content: "\1005"; }
.layui-icon-huanfu2:before { content: "\e61b"; }
.layui-icon-On-line:before { content: "\e610"; }
.layui-icon-biaoge:before { content: "\e62d"; }
.layui-icon-youyou:before { content: "\e602"; }
.layui-icon-zuozuo:before { content: "\e603"; }
.layui-icon-cart-simple:before { content: "\e698"; }
.layui-icon-cry:before { content: "\e69c"; }
.layui-icon-smile:before { content: "\e6af"; }
.layui-icon-survey:before { content: "\e6b2"; }
.layui-icon-tree:before { content: "\e62e"; }
.layui-icon-iconfont17:before { content: "\e62f"; }
.layui-icon-tianjia:before { content: "\e61f"; }
.layui-icon-xiazai:before { content: "\e601"; }
.layui-icon-xuanzemoban48:before { content: "\e630"; }
.layui-icon-gongju:before { content: "\e631"; }
.layui-icon-face-surprised:before { content: "\e664"; }
.layui-icon-bianji:before { content: "\e642"; }
.layui-icon-speaker:before { content: "\e645"; }
.layui-icon-xiangxia:before { content: "\e61a"; }
.layui-icon-wenjian:before { content: "\e621"; }
.layui-icon-layouts:before { content: "\e632"; }
.layui-icon-duigou:before { content: "\e618"; }
.layui-icon-tianjia1:before { content: "\e608"; }
.layui-icon-yaoyaozhibofanye:before { content: "\e633"; }
.layui-icon-read:before { content: "\e705"; }
.layui-icon-404:before { content: "\e61c"; }
.layui-icon-lunbozutu:before { content: "\e634"; }
.layui-icon-help:before { content: "\e607"; }
.layui-icon-daima1:before { content: "\e635"; }
.layui-icon-jinshui:before { content: "\e636"; }
.layui-icon-find-fill:before { content: "\e670"; }
.layui-icon-about:before { content: "\e60b"; }
.layui-icon-location:before { content: "\e715"; }
.layui-icon-xiangshang:before { content: "\e619"; }
.layui-icon-pause:before { content: "\e651"; }
.layui-icon-riqi:before { content: "\e637"; }
.layui-icon-uploadfile:before { content: "\e61d"; }
.layui-icon-delete:before { content: "\e640"; }
.layui-icon-play:before { content: "\e652"; }
.layui-icon-top:before { content: "\e604"; }
.layui-icon-haoyouqingqiu:before { content: "\e612"; }
.layui-icon-weibiaoti1:before { content: "\e605"; }
.layui-icon-chuangkou:before { content: "\e638"; }
.layui-icon-comiisbiaoqing:before { content: "\e60c"; }
.layui-icon-zhengque:before { content: "\e616"; }
.layui-icon-dollar:before { content: "\e659"; }
.layui-icon-iconfontwodehaoyou:before { content: "\e613"; }
.layui-icon-wenjianxiazai:before { content: "\e61e"; }
.layui-icon-tupian:before { content: "\e60d"; }
.layui-icon-lianjie:before { content: "\e64c"; }
.layui-icon-diamond:before { content: "\e735"; }
.layui-icon-jilu:before { content: "\e60e"; }
.layui-icon-liucheng:before { content: "\e622"; }
.layui-icon-fontstrikethrough:before { content: "\e64f"; }
.layui-icon-unlink:before { content: "\e64d"; }
.layui-icon-bianjiwenzi:before { content: "\e639"; }
.layui-icon-sanjiao:before { content: "\e623"; }
.layui-icon-danxuankuanghouxuan:before { content: "\e63f"; }
.layui-icon-danxuankuangxuanzhong:before { content: "\e643"; }
.layui-icon-juzhongduiqi:before { content: "\e647"; }
.layui-icon-youduiqi:before { content: "\e648"; }
.layui-icon-zuoduiqi:before { content: "\e649"; }
.layui-icon-gongsisvgtubiaozongji22:before { content: "\e626"; }
.layui-icon-gongsisvgtubiaozongji23:before { content: "\e627"; }
.layui-icon-refresh-2:before { content: "\1002"; }
.layui-icon-loading-1:before { content: "\e63e"; }
.layui-icon-return:before { content: "\e65c"; }
.layui-icon-jiacu:before { content: "\e62b"; }
.layui-icon-uploading:before { content: "\e67c"; }
.layui-icon-liaotianduihuaimgoutong:before { content: "\e63a"; }
.layui-icon-video:before { content: "\e6ed"; }
.layui-icon-headset:before { content: "\e6fc"; }
.layui-icon-wenjianjiafan:before { content: "\e624"; }
.layui-icon-shouji:before { content: "\e63b"; }
.layui-icon-tianjia2:before { content: "\e654"; }
.layui-icon-wenjianjia:before { content: "\e7a0"; }
.layui-icon-biaoqing:before { content: "\e650"; }
.layui-icon-html:before { content: "\e64b"; }
.layui-icon-biaodan:before { content: "\e63c"; }
.layui-icon-cart:before { content: "\e657"; }
.layui-icon-camera-fill:before { content: "\e65d"; }
.layui-icon-25:before { content: "\e62a"; }
.layui-icon-emwdaima:before { content: "\e64e"; }
.layui-icon-fire:before { content: "\e756"; }
.layui-icon-set:before { content: "\e716"; }
.layui-icon-zitixiahuaxian:before { content: "\e646"; }
.layui-icon-sanjiao1:before { content: "\e625"; }
.layui-icon-tips:before { content: "\e702"; }
.layui-icon-tupian-copy-copy:before { content: "\e64a"; }
.layui-icon-more-vertical:before { content: "\e671"; }
.layui-icon-zhuti2:before { content: "\e66c"; }
.layui-icon-loading:before { content: "\e63d"; }
.layui-icon-xieti:before { content: "\e644"; }
.layui-icon-refresh-1:before { content: "\e666"; }
.layui-icon-rmb:before { content: "\e65e"; }
.layui-icon-home:before { content: "\e68e"; }
.layui-icon-user:before { content: "\e770"; }
.layui-icon-notice:before { content: "\e667"; }
.layui-icon-voice:before { content: "\e688"; }
.layui-icon-download:before { content: "\e681"; }
.layui-icon-snowflake:before { content: "\e6b1"; }
.layui-icon-yemian1:before { content: "\e655"; }
.layui-icon-template:before { content: "\e663"; }
.layui-icon-auz:before { content: "\e672"; }
.layui-icon-console:before { content: "\e665"; }
.layui-icon-app:before { content: "\e653"; }
.layui-icon-xiayiye:before { content: "\e65a"; }
.layui-icon-website:before { content: "\e7ae"; }
.layui-icon-xiayiye1:before { content: "\e65b"; }
.layui-icon-component:before { content: "\e857"; }
.layui-icon-more:before { content: "\e65f"; }
.layui-icon-shrink-right:before { content: "\e668"; }
.layui-icon-spread-left:before { content: "\e66b"; }
.layui-icon-camera:before { content: "\e660"; }
.layui-icon-note:before { content: "\e66e"; }
.layui-icon-refresh:before { content: "\e669"; }
.layui-icon-nv:before { content: "\e661"; }
.layui-icon-nan:before { content: "\e662"; }
.layui-icon-senior:before { content: "\e674"; }
.layui-icon-theme:before { content: "\e66a"; }
.layui-icon-tread:before { content: "\e6c5"; }
.layui-icon-praise:before { content: "\e6c6"; }
.layui-icon-star-fill:before { content: "\e658"; }
.layui-icon-template-1:before { content: "\e656"; }
.layui-icon-loading-2:before { content: "\e66d"; }
/* 基本布局 */
.layui-main{position: relative; width: 1140px; margin: 0 auto;}
@@ -119,14 +404,16 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-col-xs-offset11{margin-left: 91.66666667%;}
.layui-col-xs-offset12{margin-left: 100%;}
/* 超小屏幕(手机) */@media screen and (max-width: 768px) {
/* 超小屏幕(手机) */
@media screen and (max-width: 768px) {
.layui-hide-xs{display: none!important;}
.layui-show-xs-block{display: block!important;}
.layui-show-xs-inline{display: inline!important;}
.layui-show-xs-inline-block{display: inline-block!important;}
}
/* 小型屏幕(平板) */@media screen and (min-width: 768px) {
/* 小型屏幕(平板) */
@media screen and (min-width: 768px) {
.layui-container{width: 750px;}
.layui-hide-sm{display: none!important;}
.layui-show-sm-block{display: block!important;}
@@ -160,7 +447,8 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-col-sm-offset11{margin-left: 91.66666667%;}
.layui-col-sm-offset12{margin-left: 100%;}
}
/* 中型屏幕(桌面) */@media screen and (min-width: 992px) {
/* 中型屏幕(桌面) */
@media screen and (min-width: 992px) {
.layui-container{width: 970px;}
.layui-hide-md{display: none!important;}
.layui-show-md-block{display: block!important;}
@@ -194,7 +482,8 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-col-md-offset11{margin-left: 91.66666667%;}
.layui-col-md-offset12{margin-left: 100%;}
}
/* 大型屏幕(桌面) */@media screen and (min-width: 1200px) {
/* 大型屏幕(桌面) */
@media screen and (min-width: 1200px) {
.layui-container{width: 1170px;}
.layui-hide-lg{display: none!important;}
.layui-show-lg-block{display: block!important;}
@@ -271,16 +560,16 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-progress-bar{position: absolute; left: 0; top: 0; width: 0; max-width: 100%; height: 6px; border-radius: 20px; text-align: right; background-color: #5FB878; transition: all .3s; -webkit-transition: all .3s;}
.layui-progress-big,
.layui-progress-big .layui-progress-bar{height: 18px; line-height: 18px;}
.layui-progress-text{position: relative; top: -18px; line-height: 18px; font-size: 12px; color: #666}
.layui-progress-text{position: relative; top: -20px; line-height: 18px; font-size: 12px; color: #666}
.layui-progress-big .layui-progress-text{position: static; padding: 0 10px; color: #fff;}
/* 卡片面板 */
.layui-card{margin-bottom: 15px; border-radius: 2px; background-color: #fff; box-shadow: 0 1px 2px 0 rgba(0,0,0,.05);}
.layui-card:last-child{margin-bottom: 0;}
.layui-card-header{position: relative; height: 42px; line-height: 42px; padding: 0 15px; border-bottom: 1px solid #f6f6f6; color: #333; border-radius: 2px 2px 0 0; font-size: 14px;}
.layui-card-body{position: relative; padding: 10px 15px; line-height: 24px;}
.layui-card-body .layui-table{margin: 5px 0;}
.layui-card .layui-tab{margin: 0;}
/*
面板
*/
/* 折叠面板 */
.layui-collapse{border-width: 1px; border-style: solid; border-radius: 2px;}
@@ -291,6 +580,29 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-colla-content{display: none; padding: 10px 15px; line-height: 22px; color: #666;}
.layui-colla-icon{position: absolute; left: 15px; top: 0; font-size: 14px;}
/* 卡片面板 */
.layui-card{margin-bottom: 15px; border-radius: 2px; background-color: #fff; box-shadow: 0 1px 2px 0 rgba(0,0,0,.05);}
.layui-card:last-child{margin-bottom: 0;}
.layui-card-header{position: relative; height: 42px; line-height: 42px; padding: 0 15px; border-bottom: 1px solid #f6f6f6; color: #333; border-radius: 2px 2px 0 0; font-size: 14px;}
.layui-card-body{position: relative; padding: 10px 15px; line-height: 24px;}
.layui-card-body .layui-table{margin: 5px 0;}
.layui-card .layui-tab{margin: 0;}
/* 常规面板 */
.layui-panel{}
/* 窗口面板 */
.layui-panel-window{position: relative; padding: 15px; border-radius: 0; border-top: 5px solid #E6E6E6; background-color: #fff;}
/*
默认主题
*/
/* 背景颜色 */
.layui-bg-red{background-color: #FF5722 !important; color: #fff!important;} /*赤*/
.layui-bg-orange{background-color: #FFB800!important; color: #fff!important;} /*橙*/
@@ -300,12 +612,6 @@ a cite{font-style: normal; *cursor:pointer;}
.layui-bg-black{background-color: #393D49!important; color: #fff!important;} /*黑*/
.layui-bg-gray{background-color: #eee!important; color: #666!important;} /*灰*/
/*
默认主题
*/
/* 边框 */
.layui-quote-nm,
.layui-elem-field,
@@ -341,11 +647,24 @@ hr, .layui-timeline-item:before{background-color: #e6e6e6;}
.layui-text em,
.layui-word-aux{color: #999 !important; padding: 0 5px !important;}
/* 按钮 */
/*
按钮
*/
.layui-btn{display: inline-block; vertical-align: middle; height: 38px; line-height: 38px; padding: 0 18px; background-color: #009688; color: #fff; white-space: nowrap; text-align: center; font-size: 14px; border: none; border-radius: 2px; cursor: pointer; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;}
.layui-btn:hover{opacity: 0.8; filter:alpha(opacity=80); color: #fff;}
.layui-btn:active{opacity: 1; filter:alpha(opacity=100);}
.layui-btn+.layui-btn{margin-left: 10px;}
/* 按钮容器 */
.layui-btn-container{font-size: 0;}
.layui-btn-container .layui-btn{margin-right: 10px; margin-bottom: 10px;}
.layui-btn-container .layui-btn+.layui-btn{margin-left: 0;}
.layui-table .layui-btn-container .layui-btn{margin-bottom: 9px;}
/* 圆角 */.layui-btn-radius{border-radius: 100px;}
.layui-btn .layui-icon{margin-right: 3px; font-size: 18px; vertical-align: bottom; vertical-align: middle\0;}
@@ -370,6 +689,7 @@ hr, .layui-timeline-item:before{background-color: #e6e6e6;}
.layui-btn-group .layui-btn:last-child{border-radius: 0 2px 2px 0;}
.layui-btn-group .layui-btn+.layui-btn{margin-left: 0;}
.layui-btn-group+.layui-btn-group{margin-left: 10px;}
/* 流体 */.layui-btn-fluid{width: 100%;}
/** 表单 **/
.layui-input, .layui-textarea, .layui-select{height: 38px; line-height: 1.3; line-height: 38px\9; border-width: 1px; border-style: solid; background-color: #fff; border-radius: 2px;}
@@ -388,7 +708,8 @@ hr, .layui-timeline-item:before{background-color: #e6e6e6;}
.layui-form-item{margin-bottom: 15px; clear: both; *zoom: 1;}
.layui-form-item:after{content:'\20'; clear: both; *zoom: 1; display: block; height:0;}
.layui-form-label{position: relative; float: left; display: block; padding: 9px 15px; width: 80px; font-weight:normal;line-height: 20px; text-align: right;}
.layui-form-label{position: relative; float: left; display: block; padding: 9px 15px; width: 80px; font-weight: 400; line-height: 20px; text-align: right;}
.layui-form-label-col{display: block; float: none; padding: 9px 0; line-height: 20px; text-align: left;}
.layui-form-item .layui-inline{margin-bottom: 5px; margin-right: 10px;}
.layui-input-block, .layui-input-inline{position: relative;}
.layui-input-block{margin-left: 110px; min-height: 36px;}
@@ -396,7 +717,7 @@ hr, .layui-timeline-item:before{background-color: #e6e6e6;}
.layui-form-item .layui-input-inline{float: left; width: 190px; margin-right: 10px;}
.layui-form-text .layui-input-inline{width: auto;}
/* 分割块 */.layui-form-mid{position: relative; float: left; display: block; padding: 8px 0 !important; line-height: 20px; margin-right: 10px;}
/* 分割块 */.layui-form-mid{position: relative; float: left; display: block; padding: 9px 0 !important; line-height: 20px; margin-right: 10px;}
/* 警告域 */.layui-form-danger:focus
,.layui-form-danger+.layui-form-select .layui-input{border-color: #FF5722 !important;}
@@ -457,12 +778,12 @@ hr, .layui-timeline-item:before{background-color: #e6e6e6;}
.layui-checkbox-disbaled:hover i{color: #fff !important;}
/* 单选框 */
*[lay-radio]{display: none;}
.layui-form-radio{display: inline-block; vertical-align: middle; line-height: 28px; margin: 6px 10px 0 0; padding-right: 10px; cursor: pointer; font-size: 0;}
.layui-form-radio *{display: inline-block; vertical-align: middle;}
.layui-form-radio i{margin-right: 8px; font-size: 22px; color: #c2c2c2;}
.layui-form-radio span{font-size: 14px;}
.layui-form-radioed i,.layui-form-radio i:hover{color: #5FB878;}
.layui-radio-disbaled i{color: #e2e2e2 !important;}
.layui-form-radio *{display: inline-block; vertical-align: middle; font-size: 14px;}
.layui-form-radio>i{margin-right: 8px; font-size: 22px; color: #c2c2c2;}
.layui-form-radioed>i,.layui-form-radio>i:hover{color: #5FB878;}
.layui-radio-disbaled>i{color: #e2e2e2 !important;}
/* 表单方框风格 */.layui-form-pane .layui-form-label{width: 110px; padding: 8px 15px; height: 38px; line-height: 20px; border-width: 1px; border-style: solid; border-radius: 2px 0 0 2px; text-align: center; background-color: #FBFBFB; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; box-sizing: border-box;}
.layui-form-pane .layui-input-inline{margin-left: -1px;}

Binary file not shown.

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 222 KiB

After

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

Binary file not shown.

View File

@@ -62,7 +62,7 @@ layui.define('jquery', function(exports){
,tabElem = $('.layui-tab[lay-filter='+ filter +']')
,titElem = tabElem.children(TITLE)
,liElem = titElem.find('>li[lay-id="'+ layid +'"]');
call.tabClick(null, null, liElem);
call.tabClick.call(liElem[0], null, null, liElem);
return this;
};
@@ -193,7 +193,7 @@ layui.define('jquery', function(exports){
}
}
//点击选中
//点击选中导航菜单
,clickThis: function(){
var othis = $(this), parents = othis.parents(NAV_ELEM)
,filter = parents.attr('lay-filter')

View File

@@ -376,14 +376,21 @@ layui.define('layer', function(exports){
var othis = $(this), hasRender = othis.next('.' + CLASS), disabled = this.disabled;
if(typeof othis.attr('lay-ignore') === 'string') return othis.show();
hasRender[0] && hasRender.remove(); //如果已经渲染则Rerender
//替代元素
var reElem = $(['<div class="layui-unselect '+ CLASS + (radio.checked ? (' '+CLASS+'ed') : '') + (disabled ? ' layui-radio-disbaled '+DISABLED : '') +'">'
,'<i class="layui-anim layui-icon">'+ ICON[radio.checked ? 0 : 1] +'</i>'
,'<span>'+ (radio.title||'未命名') +'</span>'
,'<div>'+ function(){
var title = radio.title || '';
if(typeof othis.next().attr('lay-radio') === 'string'){
title = othis.next().html();
othis.next().remove();
}
return title
}() +'</div>'
,'</div>'].join(''));
hasRender[0] && hasRender.remove(); //如果已经渲染则Rerender
othis.after(reElem);
events.call(this, reElem);
});

View File

@@ -1,6 +1,6 @@
/**
@Namelayer v3.1.1 Web弹层组件
@Namelayer v3.1.2 Web弹层组件
@Author贤心
@Sitehttp://layer.layui.com
@LicenseMIT
@@ -982,8 +982,8 @@ layer.prompt = function(options, yes){
style = 'style="width: '+ area[0] +'; height: '+ area[1] + ';"';
delete options.area;
}
var prompt, content = options.formType == 2 ? '<textarea class="layui-layer-input"' + style +'>' + (options.value||'') +'</textarea>' : function(){
return '<input type="'+ (options.formType == 1 ? 'password' : 'text') +'" class="layui-layer-input" value="'+ (options.value||'') +'">';
var prompt, content = options.formType == 2 ? '<textarea class="layui-layer-input"' + style +'></textarea>' : function(){
return '<input type="'+ (options.formType == 1 ? 'password' : 'text') +'" class="layui-layer-input">';
}();
var success = options.success;
@@ -997,7 +997,7 @@ layer.prompt = function(options, yes){
,maxWidth: win.width()
,success: function(layero){
prompt = layero.find('.layui-layer-input');
prompt.focus();
prompt.val(options.value || '').focus();
typeof success === 'function' && success(layero);
}
,resize: false

View File

@@ -192,6 +192,9 @@ layui.define(['laytpl', 'laypage', 'layer', 'form'], function(exports){
limit: 10 //每页显示的数量
,loading: true //请求数据时是否显示loading
,cellMinWidth: 60 //所有单元格默认最小宽度
,text: {
none: '无数据'
}
};
//表格渲染
@@ -417,10 +420,11 @@ layui.define(['laytpl', 'laypage', 'layer', 'form'], function(exports){
,success: function(res){
if(res[response.statusName] != response.statusCode){
that.renderForm();
return that.layMain.html('<div class="'+ NONE +'">'+ (res[response.msgName] || '返回的数据状态异常') +'</div>');
that.layMain.html('<div class="'+ NONE +'">'+ (res[response.msgName] || '返回的数据状态异常') +'</div>');
} else {
that.renderData(res, curr, res[response.countName]), sort();
options.time = (new Date().getTime() - that.startTime) + ' ms'; //耗时(接口请求+视图渲染)
}
that.renderData(res, curr, res[response.countName]), sort();
options.time = (new Date().getTime() - that.startTime) + ' ms'; //耗时(接口请求+视图渲染)
loadIndex && layer.close(loadIndex);
typeof options.done === 'function' && options.done(res, curr, res[response.countName]);
}
@@ -548,8 +552,11 @@ layui.define(['laytpl', 'laypage', 'layer', 'form'], function(exports){
if(item3.toolbar){
return laytpl($(item3.toolbar).html()||'').render(tplData);
}
return item3.templet ? laytpl($(item3.templet).html() || String(content)).render(tplData) : content;
return item3.templet ? function(){
return typeof item3.templet === 'function'
? item3.templet(tplData)
: laytpl($(item3.templet).html() || String(content)).render(tplData)
}() : content;
}()
,'</div></td>'].join('');
@@ -583,6 +590,9 @@ layui.define(['laytpl', 'laypage', 'layer', 'form'], function(exports){
that.key = options.id || options.index;
table.cache[that.key] = data; //记录数据
//显示隐藏分页栏
that.layPage[data.length === 0 && curr == 1 ? 'addClass' : 'removeClass'](HIDE);
//排序
if(sort){
return render();
@@ -593,7 +603,7 @@ layui.define(['laytpl', 'laypage', 'layer', 'form'], function(exports){
that.layFixed.remove();
that.layMain.find('tbody').html('');
that.layMain.find('.'+ NONE).remove();
return that.layMain.append('<div class="'+ NONE +'">无数据</div>');
return that.layMain.append('<div class="'+ NONE +'">'+ options.text.none +'</div>');
}
render();

View File

@@ -143,7 +143,7 @@ layui.define('jquery', function(exports){
//转化为日期格式字符
,toDateString: function(time, format){
var that = this
,date = new Date(parseInt(time) || new Date())
,date = new Date(time || new Date())
,ymd = [
that.digit(date.getFullYear(), 4)
,that.digit(date.getMonth() + 1)

View File

@@ -19,7 +19,7 @@
}
,Layui = function(){
this.v = '2.2.45'; //版本号
this.v = '2.2.5'; //版本号
}
//获取layui所在目录
@@ -73,27 +73,33 @@
Layui.prototype.cache = config;
//定义模块
Layui.prototype.define = function(deps, callback){
Layui.prototype.define = function(deps, factory){
var that = this
,type = typeof deps === 'function'
,mods = function(){
typeof callback === 'function' && callback(function(app, exports){
,callback = function(){
var setApp = function(app, exports){
layui[app] = exports;
config.status[app] = true;
};
typeof factory === 'function' && factory(function(app, exports){
setApp(app, exports);
config.callback[app] = function(){
factory(setApp);
}
});
return this;
};
type && (
callback = deps,
factory = deps,
deps = []
);
if(layui['layui.all'] || (!layui['layui.all'] && layui['layui.mobile'])){
return mods.call(that);
return callback.call(that);
}
that.use(deps, mods);
that.use(deps, callback);
return that;
};
@@ -243,6 +249,18 @@
return that;
};
//存储模块的回调
config.callback = {};
//重新执行模块的工厂函数
Layui.prototype.factory = function(modName){
if(layui[modName]){
return typeof config.callback[modName] === 'function'
? config.callback[modName]
: null;
}
};
//css内部加载器
Layui.prototype.addcss = function(firename, fn, cssname){
@@ -312,7 +330,8 @@
};
if(!/^#\//.test(hash)) return data; //禁止非路由规范
hash = hash.replace(/^#\//, '').replace(/([^#])(#.*$)/, '$1').split('/') || [];
data.href = hash = hash.replace(/^#\//, '');
hash = hash.replace(/([^#])(#.*$)/, '$1').split('/') || [];
//提取Hash结构
that.each(hash, function(index, item){
@@ -321,19 +340,20 @@
data.search[item[0]] = item[1];
}() : data.path.push(item);
});
return data;
};
//本地存储
Layui.prototype.data = function(table, settings){
//本地持久性存储
Layui.prototype.data = function(table, settings, storage){
table = table || 'layui';
storage = storage || localStorage;
if(!win.JSON || !win.JSON.parse) return;
//如果settings为null则删除表
if(settings === null){
return delete localStorage[table];
return delete storage[table];
}
settings = typeof settings === 'object'
@@ -341,17 +361,22 @@
: {key: settings};
try{
var data = JSON.parse(localStorage[table]);
var data = JSON.parse(storage[table]);
} catch(e){
var data = {};
}
if('value' in settings) data[settings.key] = settings.value;
if(settings.remove) delete data[settings.key];
localStorage[table] = JSON.stringify(data);
storage[table] = JSON.stringify(data);
return settings.key ? data[settings.key] : data;
};
//本地会话性存储
Layui.prototype.sessionData = function(table, settings){
return this.data(table, settings, sessionStorage);
}
//设备信息
Layui.prototype.device = function(key){
@@ -459,45 +484,60 @@
};
//阻止事件冒泡
Layui.prototype.stope = function(e){
e = e || win.event;
e.stopPropagation
? e.stopPropagation()
: e.cancelBubble = true;
Layui.prototype.stope = function(thisEvent){
thisEvent = thisEvent || win.event;
try { thisEvent.stopPropagation() } catch(e){
thisEvent.cancelBubble = true;
}
};
//自定义模块事件
Layui.prototype.onevent = function(modName, events, callback){
if(typeof modName !== 'string'
|| typeof callback !== 'function') return this;
config.event[modName + '.' + events] = [callback];
//不再对多次事件监听做支持
/*
config.event[modName + '.' + events]
? config.event[modName + '.' + events].push(callback)
: config.event[modName + '.' + events] = [callback];
*/
return this;
return Layui.event(modName, events, null, callback);
};
//执行自定义模块事件
Layui.prototype.event = function(modName, events, params){
Layui.prototype.event = Layui.event = function(modName, events, params, fn){
var that = this
,result = null
,filter = events.match(/\(.*\)$/)||[] //提取事件过滤器
,set = (events = modName + '.'+ events).replace(filter, '') //获取事件本体
,filter = events.match(/\((.*)\)$/)||[] //提取事件过滤器字符结构select(xxx)
,eventName = (modName + '.'+ events).replace(filter[0], '') //获取事件名form.select
,filterName = filter[1] || '' //获取过滤器名称,xxx
,callback = function(_, item){
var res = item && item.call(that, params);
res === false && result === null && (result = false);
};
layui.each(config.event[set], callback);
filter[0] && layui.each(config.event[events], callback); //执行过滤器中的事件
//添加事件
if(fn){
config.event[eventName] = config.event[eventName] || {};
//这里不再对多次事件监听做支持,避免更多麻烦
//config.event[eventName][filterName] ? config.event[eventName][filterName].push(fn) :
config.event[eventName][filterName] = [fn];
return this;
}
//执行事件回调
layui.each(config.event[eventName], function(key, item){
//执行当前模块的全部事件
if(filterName === '{*}'){
layui.each(item, callback);
return;
}
//执行指定事件
key === '' && layui.each(item, callback);
key === filterName && layui.each(item, callback);
});
return result;
};
win.layui = new Layui();
}(window);