diff --git a/static/Layui/v2.6.8/css/layui-icon.css b/static/Layui/v2.6.8/css/layui-icon.css deleted file mode 100644 index 7a4c7bd..0000000 --- a/static/Layui/v2.6.8/css/layui-icon.css +++ /dev/null @@ -1,190 +0,0 @@ -/** layui-v2.6.8 MIT License By https://www.layui.com 纯字体图标精简 */ -@font-face { - font-family: layui-icon; - src: url(../font/iconfont.woff2?v=256) format('woff2') -} - -.layui-icon { - font-family: layui-icon!important; - font-size: 16px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale -} - -.layui-icon-reply-fill:before{content:"\e611"} -.layui-icon-set-fill:before{content:"\e614"} -.layui-icon-menu-fill:before{content:"\e60f"} -.layui-icon-search:before{content:"\e615"} -.layui-icon-share:before{content:"\e641"} -.layui-icon-set-sm:before{content:"\e620"} -.layui-icon-engine:before{content:"\e628"} -.layui-icon-close:before{content:"\1006"} -.layui-icon-close-fill:before{content:"\1007"} -.layui-icon-chart-screen:before{content:"\e629"} -.layui-icon-star:before{content:"\e600"} -.layui-icon-circle-dot:before{content:"\e617"} -.layui-icon-chat:before{content:"\e606"} -.layui-icon-release:before{content:"\e609"} -.layui-icon-list:before{content:"\e60a"} -.layui-icon-chart:before{content:"\e62c"} -.layui-icon-ok-circle:before{content:"\1005"} -.layui-icon-layim-theme:before{content:"\e61b"} -.layui-icon-table:before{content:"\e62d"} -.layui-icon-right:before{content:"\e602"} -.layui-icon-left:before{content:"\e603"} -.layui-icon-cart-simple:before{content:"\e698"} -.layui-icon-face-cry:before{content:"\e69c"} -.layui-icon-face-smile:before{content:"\e6af"} -.layui-icon-survey:before{content:"\e6b2"} -.layui-icon-tree:before{content:"\e62e"} -.layui-icon-ie:before{content:"\e7bb"} -.layui-icon-upload-circle:before{content:"\e62f"} -.layui-icon-add-circle:before{content:"\e61f"} -.layui-icon-download-circle:before{content:"\e601"} -.layui-icon-templeate-1:before{content:"\e630"} -.layui-icon-util:before{content:"\e631"} -.layui-icon-face-surprised:before{content:"\e664"} -.layui-icon-edit:before{content:"\e642"} -.layui-icon-speaker:before{content:"\e645"} -.layui-icon-down:before{content:"\e61a"} -.layui-icon-file:before{content:"\e621"} -.layui-icon-layouts:before{content:"\e632"} -.layui-icon-rate-half:before{content:"\e6c9"} -.layui-icon-add-circle-fine:before{content:"\e608"} -.layui-icon-prev-circle:before{content:"\e633"} -.layui-icon-read:before{content:"\e705"} -.layui-icon-404:before{content:"\e61c"} -.layui-icon-carousel:before{content:"\e634"} -.layui-icon-help:before{content:"\e607"} -.layui-icon-code-circle:before{content:"\e635"} -.layui-icon-windows:before{content:"\e67f"} -.layui-icon-water:before{content:"\e636"} -.layui-icon-username:before{content:"\e66f"} -.layui-icon-find-fill:before{content:"\e670"} -.layui-icon-about:before{content:"\e60b"} -.layui-icon-location:before{content:"\e715"} -.layui-icon-up:before{content:"\e619"} -.layui-icon-pause:before{content:"\e651"} -.layui-icon-date:before{content:"\e637"} -.layui-icon-layim-uploadfile:before{content:"\e61d"} -.layui-icon-delete:before{content:"\e640"} -.layui-icon-play:before{content:"\e652"} -.layui-icon-top:before{content:"\e604"} -.layui-icon-firefox:before{content:"\e686"} -.layui-icon-friends:before{content:"\e612"} -.layui-icon-refresh-3:before{content:"\e9aa"} -.layui-icon-ok:before{content:"\e605"} -.layui-icon-layer:before{content:"\e638"} -.layui-icon-face-smile-fine:before{content:"\e60c"} -.layui-icon-dollar:before{content:"\e659"} -.layui-icon-group:before{content:"\e613"} -.layui-icon-layim-download:before{content:"\e61e"} -.layui-icon-picture-fine:before{content:"\e60d"} -.layui-icon-link:before{content:"\e64c"} -.layui-icon-diamond:before{content:"\e735"} -.layui-icon-log:before{content:"\e60e"} -.layui-icon-key:before{content:"\e683"} -.layui-icon-rate-solid:before{content:"\e67a"} -.layui-icon-fonts-del:before{content:"\e64f"} -.layui-icon-unlink:before{content:"\e64d"} -.layui-icon-fonts-clear:before{content:"\e639"} -.layui-icon-triangle-r:before{content:"\e623"} -.layui-icon-circle:before{content:"\e63f"} -.layui-icon-radio:before{content:"\e643"} -.layui-icon-align-center:before{content:"\e647"} -.layui-icon-align-right:before{content:"\e648"} -.layui-icon-align-left:before{content:"\e649"} -.layui-icon-loading-1:before{content:"\e63e"} -.layui-icon-return:before{content:"\e65c"} -.layui-icon-fonts-strong:before{content:"\e62b"} -.layui-icon-upload:before{content:"\e67c"} -.layui-icon-dialogue:before{content:"\e63a"} -.layui-icon-video:before{content:"\e6ed"} -.layui-icon-headset:before{content:"\e6fc"} -.layui-icon-cellphone-fine:before{content:"\e63b"} -.layui-icon-add-1:before{content:"\e654"} -.layui-icon-face-smile-b:before{content:"\e650"} -.layui-icon-fonts-html:before{content:"\e64b"} -.layui-icon-screen-full:before{content:"\e622"} -.layui-icon-form:before{content:"\e63c"} -.layui-icon-cart:before{content:"\e657"} -.layui-icon-camera-fill:before{content:"\e65d"} -.layui-icon-tabs:before{content:"\e62a"} -.layui-icon-heart-fill:before{content:"\e68f"} -.layui-icon-fonts-code:before{content:"\e64e"} -.layui-icon-ios:before{content:"\e680"} -.layui-icon-at:before{content:"\e687"} -.layui-icon-fire:before{content:"\e756"} -.layui-icon-set:before{content:"\e716"} -.layui-icon-fonts-u:before{content:"\e646"} -.layui-icon-triangle-d:before{content:"\e625"} -.layui-icon-tips:before{content:"\e702"} -.layui-icon-picture:before{content:"\e64a"} -.layui-icon-more-vertical:before{content:"\e671"} -.layui-icon-bluetooth:before{content:"\e689"} -.layui-icon-flag:before{content:"\e66c"} -.layui-icon-loading:before{content:"\e63d"} -.layui-icon-fonts-i:before{content:"\e644"} -.layui-icon-refresh-1:before{content:"\e666"} -.layui-icon-rmb:before{content:"\e65e"} -.layui-icon-addition:before{content:"\e624"} -.layui-icon-home:before{content:"\e68e"} -.layui-icon-time:before{content:"\e68d"} -.layui-icon-user:before{content:"\e770"} -.layui-icon-notice:before{content:"\e667"} -.layui-icon-chrome:before{content:"\e68a"} -.layui-icon-edge:before{content:"\e68b"} -.layui-icon-login-weibo:before{content:"\e675"} -.layui-icon-voice:before{content:"\e688"} -.layui-icon-upload-drag:before{content:"\e681"} -.layui-icon-login-qq:before{content:"\e676"} -.layui-icon-snowflake:before{content:"\e6b1"} -.layui-icon-heart:before{content:"\e68c"} -.layui-icon-logout:before{content:"\e682"} -.layui-icon-file-b:before{content:"\e655"} -.layui-icon-template:before{content:"\e663"} -.layui-icon-transfer:before{content:"\e691"} -.layui-icon-auz:before{content:"\e672"} -.layui-icon-console:before{content:"\e665"} -.layui-icon-app:before{content:"\e653"} -.layui-icon-prev:before{content:"\e65a"} -.layui-icon-website:before{content:"\e7ae"} -.layui-icon-next:before{content:"\e65b"} -.layui-icon-component:before{content:"\e857"} -.layui-icon-android:before{content:"\e684"} -.layui-icon-more:before{content:"\e65f"} -.layui-icon-login-wechat:before{content:"\e677"} -.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-female:before{content:"\e661"} -.layui-icon-male:before{content:"\e662"} -.layui-icon-screen-restore:before{content:"\e758"} -.layui-icon-password:before{content:"\e673"} -.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-rate:before{content:"\e67b"} -.layui-icon-template-1:before{content:"\e656"} -.layui-icon-vercode:before{content:"\e679"} -.layui-icon-service:before{content:"\e626"} -.layui-icon-cellphone:before{content:"\e678"} -.layui-icon-print:before{content:"\e66d"} -.layui-icon-cols:before{content:"\e610"} -.layui-icon-wifi:before{content:"\e7e0"} -.layui-icon-export:before{content:"\e67d"} -.layui-icon-rss:before{content:"\e808"} -.layui-icon-slider:before{content:"\e714"} -.layui-icon-email:before{content:"\e618"} -.layui-icon-subtraction:before{content:"\e67e"} -.layui-icon-mike:before{content:"\e6dc"} -.layui-icon-light:before{content:"\e748"} -.layui-icon-gift:before{content:"\e627"} -.layui-icon-mute:before{content:"\e685"} -.layui-icon-reduce-circle:before{content:"\e616"} -.layui-icon-music:before{content:"\e690"} \ No newline at end of file diff --git a/static/Layui/v2.6.8/css/layui.css b/static/Layui/v2.6.8/css/layui.css deleted file mode 100644 index a8085e6..0000000 --- a/static/Layui/v2.6.8/css/layui.css +++ /dev/null @@ -1,1525 +0,0 @@ - -/** - * Layui - * Classic modular Front-End UI library - * MIT Licensed - */ - - -/** 初始化 **/ -body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,input,button,textarea,p,blockquote,th,td,form,pre{margin: 0; padding: 0; -webkit-tap-highlight-color:rgba(0,0,0,0);} -a:active,a:hover{outline:0} -img{display: inline-block; border: none; vertical-align: middle;} -li{list-style:none;} -table{border-collapse: collapse; border-spacing: 0;} -h1,h2,h3{font-weight: 400;} -h4, h5, h6{font-size: 100%; font-weight: 400;} -button,input,select,textarea{font-size: 100%; } -input,button,textarea,select,optgroup,option{font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; outline: 0;} -pre{white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;} - -/** 初始化全局标签 **/ -body{line-height: 1.6; color: #333; color: rgba(0,0,0,.85); font: 14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif;} -hr{height: 0; line-height: 0; margin: 10px 0; padding: 0; border: none!important; border-bottom: 1px solid #eee !important; clear: both; overflow: hidden; background: none;} -a{color: #333; text-decoration:none;} -a:hover{color: #777;} -a cite{font-style: normal; *cursor:pointer;} - -/** 基础通用 **/ -.layui-border-box, .layui-border-box *{box-sizing: border-box;} -/* 消除第三方ui可能造成的冲突 */.layui-box, .layui-box *{box-sizing: content-box;} -.layui-clear{clear: both; *zoom: 1;} -.layui-clear:after{content:'\20'; clear:both; *zoom:1; display:block; height:0;} -.layui-inline{position: relative; display: inline-block; *display:inline; *zoom:1; vertical-align: middle;} -/* 三角形 */.layui-edge{position: relative; display: inline-block; vertical-align: middle; width: 0; height: 0; border-width: 6px; border-style: dashed; border-color: transparent; overflow: hidden;} -.layui-edge-top{top: -4px; border-bottom-color: #999; border-bottom-style: solid;} -.layui-edge-right{border-left-color: #999; border-left-style: solid;} -.layui-edge-bottom{top: 2px; border-top-color: #999; border-top-style: solid;} -.layui-edge-left{border-right-color: #999; border-right-style: solid;} -/* 单行溢出省略 */.layui-elip{text-overflow: ellipsis; overflow: hidden; white-space: nowrap;} -/* 屏蔽选中 */.layui-unselect,.layui-icon, .layui-disabled{-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;} -/* 禁用 */.layui-disabled,.layui-disabled:hover{color: #d2d2d2 !important; cursor: not-allowed !important;} -/* 纯圆角 */.layui-circle{border-radius: 100%;} -.layui-show{display: block !important;} -.layui-hide{display: none !important;} -.layui-show-v{visibility: visible !important;} -.layui-hide-v{visibility: hidden !important;} - -/** 图标字体 **/ -@font-face { - font-family: 'layui-icon'; - src: url('../font/iconfont.eot?v=256'); - src: url('../font/iconfont.eot?v=256#iefix') format('embedded-opentype'), - url('../font/iconfont.woff2?v=256') format('woff2'), - url('../font/iconfont.woff?v=256') format('woff'), - url('../font/iconfont.ttf?v=256') format('truetype'), - url('../font/iconfont.svg?v=256#layui-icon') format('svg'); -} - -.layui-icon{ - font-family:"layui-icon" !important; - font-size: 16px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -/* font-class */ -.layui-icon-reply-fill:before{content:"\e611"} -.layui-icon-set-fill:before{content:"\e614"} -.layui-icon-menu-fill:before{content:"\e60f"} -.layui-icon-search:before{content:"\e615"} -.layui-icon-share:before{content:"\e641"} -.layui-icon-set-sm:before{content:"\e620"} -.layui-icon-engine:before{content:"\e628"} -.layui-icon-close:before{content:"\1006"} -.layui-icon-close-fill:before{content:"\1007"} -.layui-icon-chart-screen:before{content:"\e629"} -.layui-icon-star:before{content:"\e600"} -.layui-icon-circle-dot:before{content:"\e617"} -.layui-icon-chat:before{content:"\e606"} -.layui-icon-release:before{content:"\e609"} -.layui-icon-list:before{content:"\e60a"} -.layui-icon-chart:before{content:"\e62c"} -.layui-icon-ok-circle:before{content:"\1005"} -.layui-icon-layim-theme:before{content:"\e61b"} -.layui-icon-table:before{content:"\e62d"} -.layui-icon-right:before{content:"\e602"} -.layui-icon-left:before{content:"\e603"} -.layui-icon-cart-simple:before{content:"\e698"} -.layui-icon-face-cry:before{content:"\e69c"} -.layui-icon-face-smile:before{content:"\e6af"} -.layui-icon-survey:before{content:"\e6b2"} -.layui-icon-tree:before{content:"\e62e"} -.layui-icon-ie:before{content:"\e7bb"} -.layui-icon-upload-circle:before{content:"\e62f"} -.layui-icon-add-circle:before{content:"\e61f"} -.layui-icon-download-circle:before{content:"\e601"} -.layui-icon-templeate-1:before{content:"\e630"} -.layui-icon-util:before{content:"\e631"} -.layui-icon-face-surprised:before{content:"\e664"} -.layui-icon-edit:before{content:"\e642"} -.layui-icon-speaker:before{content:"\e645"} -.layui-icon-down:before{content:"\e61a"} -.layui-icon-file:before{content:"\e621"} -.layui-icon-layouts:before{content:"\e632"} -.layui-icon-rate-half:before{content:"\e6c9"} -.layui-icon-add-circle-fine:before{content:"\e608"} -.layui-icon-prev-circle:before{content:"\e633"} -.layui-icon-read:before{content:"\e705"} -.layui-icon-404:before{content:"\e61c"} -.layui-icon-carousel:before{content:"\e634"} -.layui-icon-help:before{content:"\e607"} -.layui-icon-code-circle:before{content:"\e635"} -.layui-icon-windows:before{content:"\e67f"} -.layui-icon-water:before{content:"\e636"} -.layui-icon-username:before{content:"\e66f"} -.layui-icon-find-fill:before{content:"\e670"} -.layui-icon-about:before{content:"\e60b"} -.layui-icon-location:before{content:"\e715"} -.layui-icon-up:before{content:"\e619"} -.layui-icon-pause:before{content:"\e651"} -.layui-icon-date:before{content:"\e637"} -.layui-icon-layim-uploadfile:before{content:"\e61d"} -.layui-icon-delete:before{content:"\e640"} -.layui-icon-play:before{content:"\e652"} -.layui-icon-top:before{content:"\e604"} -.layui-icon-firefox:before{content:"\e686"} -.layui-icon-friends:before{content:"\e612"} -.layui-icon-refresh-3:before{content:"\e9aa"} -.layui-icon-ok:before{content:"\e605"} -.layui-icon-layer:before{content:"\e638"} -.layui-icon-face-smile-fine:before{content:"\e60c"} -.layui-icon-dollar:before{content:"\e659"} -.layui-icon-group:before{content:"\e613"} -.layui-icon-layim-download:before{content:"\e61e"} -.layui-icon-picture-fine:before{content:"\e60d"} -.layui-icon-link:before{content:"\e64c"} -.layui-icon-diamond:before{content:"\e735"} -.layui-icon-log:before{content:"\e60e"} -.layui-icon-key:before{content:"\e683"} -.layui-icon-rate-solid:before{content:"\e67a"} -.layui-icon-fonts-del:before{content:"\e64f"} -.layui-icon-unlink:before{content:"\e64d"} -.layui-icon-fonts-clear:before{content:"\e639"} -.layui-icon-triangle-r:before{content:"\e623"} -.layui-icon-circle:before{content:"\e63f"} -.layui-icon-radio:before{content:"\e643"} -.layui-icon-align-center:before{content:"\e647"} -.layui-icon-align-right:before{content:"\e648"} -.layui-icon-align-left:before{content:"\e649"} -.layui-icon-loading-1:before{content:"\e63e"} -.layui-icon-return:before{content:"\e65c"} -.layui-icon-fonts-strong:before{content:"\e62b"} -.layui-icon-upload:before{content:"\e67c"} -.layui-icon-dialogue:before{content:"\e63a"} -.layui-icon-video:before{content:"\e6ed"} -.layui-icon-headset:before{content:"\e6fc"} -.layui-icon-cellphone-fine:before{content:"\e63b"} -.layui-icon-add-1:before{content:"\e654"} -.layui-icon-face-smile-b:before{content:"\e650"} -.layui-icon-fonts-html:before{content:"\e64b"} -.layui-icon-screen-full:before{content:"\e622"} -.layui-icon-form:before{content:"\e63c"} -.layui-icon-cart:before{content:"\e657"} -.layui-icon-camera-fill:before{content:"\e65d"} -.layui-icon-tabs:before{content:"\e62a"} -.layui-icon-heart-fill:before{content:"\e68f"} -.layui-icon-fonts-code:before{content:"\e64e"} -.layui-icon-ios:before{content:"\e680"} -.layui-icon-at:before{content:"\e687"} -.layui-icon-fire:before{content:"\e756"} -.layui-icon-set:before{content:"\e716"} -.layui-icon-fonts-u:before{content:"\e646"} -.layui-icon-triangle-d:before{content:"\e625"} -.layui-icon-tips:before{content:"\e702"} -.layui-icon-picture:before{content:"\e64a"} -.layui-icon-more-vertical:before{content:"\e671"} -.layui-icon-bluetooth:before{content:"\e689"} -.layui-icon-flag:before{content:"\e66c"} -.layui-icon-loading:before{content:"\e63d"} -.layui-icon-fonts-i:before{content:"\e644"} -.layui-icon-refresh-1:before{content:"\e666"} -.layui-icon-rmb:before{content:"\e65e"} -.layui-icon-addition:before{content:"\e624"} -.layui-icon-home:before{content:"\e68e"} -.layui-icon-time:before{content:"\e68d"} -.layui-icon-user:before{content:"\e770"} -.layui-icon-notice:before{content:"\e667"} -.layui-icon-chrome:before{content:"\e68a"} -.layui-icon-edge:before{content:"\e68b"} -.layui-icon-login-weibo:before{content:"\e675"} -.layui-icon-voice:before{content:"\e688"} -.layui-icon-upload-drag:before{content:"\e681"} -.layui-icon-login-qq:before{content:"\e676"} -.layui-icon-snowflake:before{content:"\e6b1"} -.layui-icon-heart:before{content:"\e68c"} -.layui-icon-logout:before{content:"\e682"} -.layui-icon-file-b:before{content:"\e655"} -.layui-icon-template:before{content:"\e663"} -.layui-icon-transfer:before{content:"\e691"} -.layui-icon-auz:before{content:"\e672"} -.layui-icon-console:before{content:"\e665"} -.layui-icon-app:before{content:"\e653"} -.layui-icon-prev:before{content:"\e65a"} -.layui-icon-website:before{content:"\e7ae"} -.layui-icon-next:before{content:"\e65b"} -.layui-icon-component:before{content:"\e857"} -.layui-icon-android:before{content:"\e684"} -.layui-icon-more:before{content:"\e65f"} -.layui-icon-login-wechat:before{content:"\e677"} -.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-female:before{content:"\e661"} -.layui-icon-male:before{content:"\e662"} -.layui-icon-screen-restore:before{content:"\e758"} -.layui-icon-password:before{content:"\e673"} -.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-rate:before{content:"\e67b"} -.layui-icon-template-1:before{content:"\e656"} -.layui-icon-vercode:before{content:"\e679"} -.layui-icon-service:before{content:"\e626"} -.layui-icon-cellphone:before{content:"\e678"} -.layui-icon-print:before{content:"\e66d"} -.layui-icon-cols:before{content:"\e610"} -.layui-icon-wifi:before{content:"\e7e0"} -.layui-icon-export:before{content:"\e67d"} -.layui-icon-rss:before{content:"\e808"} -.layui-icon-slider:before{content:"\e714"} -.layui-icon-email:before{content:"\e618"} -.layui-icon-subtraction:before{content:"\e67e"} -.layui-icon-mike:before{content:"\e6dc"} -.layui-icon-light:before{content:"\e748"} -.layui-icon-gift:before{content:"\e627"} -.layui-icon-mute:before{content:"\e685"} -.layui-icon-reduce-circle:before{content:"\e616"} -.layui-icon-music:before{content:"\e690"} - -/* 基本布局 */ -.layui-main{position: relative; width: 1140px; margin: 0 auto;} -.layui-header{position: relative; z-index: 1000; height: 60px;} -.layui-header a:hover{transition: all .5s; -webkit-transition: all .5s;} -.layui-side{position: fixed; left: 0; top: 0; bottom: 0; z-index: 999; width: 200px; overflow-x: hidden;} -.layui-side-scroll{position: relative; width: 220px; height: 100%; overflow-x: hidden;} -.layui-body{position: relative; left: 200px; right: 0; top: 0; bottom: 0; z-index: 900; width: auto; box-sizing: border-box;} - -/* 后台框架大布局 */ -.layui-layout-body{overflow-x: hidden;} -.layui-layout-admin .layui-header{position: fixed; top: 0; left: 0; right: 0; background-color: #23262E;} -.layui-layout-admin .layui-side{top: 60px; width: 200px; overflow-x: hidden;} -.layui-layout-admin .layui-body{position: absolute; top: 60px; padding-bottom: 44px;} -.layui-layout-admin .layui-main{width: auto; margin: 0 15px;} -.layui-layout-admin .layui-footer{position: fixed; left: 200px; right: 0; bottom: 0; z-index: 990; height: 44px; line-height: 44px; padding: 0 15px; box-shadow: -1px 0 4px rgb(0 0 0 / 12%); background-color: #FAFAFA;} -.layui-layout-admin .layui-logo{position: absolute; left: 0; top: 0; width: 200px; height: 100%; line-height: 60px; text-align: center; color: #009688; font-size: 16px; box-shadow: 0 1px 2px 0 rgb(0 0 0 / 15%);} -.layui-layout-admin .layui-header .layui-nav{background: none;} -.layui-layout-left{position: absolute !important; left: 200px; top: 0;} -.layui-layout-right{position: absolute !important; right: 0; top: 0;} - - -/* 栅格布局 */ -.layui-container{position: relative; margin: 0 auto; padding: 0 15px; box-sizing: border-box;} -.layui-fluid{position: relative; margin: 0 auto; padding: 0 15px;} - -.layui-row:before, .layui-row:after{content: ""; display: block; clear: both;} -.layui-col-xs1, .layui-col-xs2, .layui-col-xs3, .layui-col-xs4, .layui-col-xs5, .layui-col-xs6, .layui-col-xs7, .layui-col-xs8, .layui-col-xs9, .layui-col-xs10, .layui-col-xs11, .layui-col-xs12 -,.layui-col-sm1, .layui-col-sm2, .layui-col-sm3, .layui-col-sm4, .layui-col-sm5, .layui-col-sm6, .layui-col-sm7, .layui-col-sm8, .layui-col-sm9, .layui-col-sm10, .layui-col-sm11, .layui-col-sm12 -,.layui-col-md1, .layui-col-md2, .layui-col-md3, .layui-col-md4, .layui-col-md5, .layui-col-md6, .layui-col-md7, .layui-col-md8, .layui-col-md9, .layui-col-md10, .layui-col-md11, .layui-col-md12 -,.layui-col-lg1, .layui-col-lg2, .layui-col-lg3, .layui-col-lg4, .layui-col-lg5, .layui-col-lg6, .layui-col-lg7, .layui-col-lg8, .layui-col-lg9, .layui-col-lg10, .layui-col-lg11, .layui-col-lg12 -{position: relative; display: block; box-sizing: border-box;} - -.layui-col-xs1, .layui-col-xs2, .layui-col-xs3, .layui-col-xs4, .layui-col-xs5, .layui-col-xs6, .layui-col-xs7, .layui-col-xs8, .layui-col-xs9, .layui-col-xs10, .layui-col-xs11, .layui-col-xs12{float: left;} -.layui-col-xs1{width: 8.33333333%;} -.layui-col-xs2{width: 16.66666667%;} -.layui-col-xs3{width: 25%;} -.layui-col-xs4{width: 33.33333333%;} -.layui-col-xs5{width: 41.66666667%;} -.layui-col-xs6{width: 50%;} -.layui-col-xs7{width: 58.33333333%;} -.layui-col-xs8{width: 66.66666667%;} -.layui-col-xs9{width: 75%;} -.layui-col-xs10{width: 83.33333333%;} -.layui-col-xs11{width: 91.66666667%;} -.layui-col-xs12{width: 100%;} - -.layui-col-xs-offset1{margin-left: 8.33333333%;} -.layui-col-xs-offset2{margin-left: 16.66666667%;} -.layui-col-xs-offset3{margin-left: 25%;} -.layui-col-xs-offset4{margin-left: 33.33333333%;} -.layui-col-xs-offset5{margin-left: 41.66666667%;} -.layui-col-xs-offset6{margin-left: 50%;} -.layui-col-xs-offset7{margin-left: 58.33333333%;} -.layui-col-xs-offset8{margin-left: 66.66666667%;} -.layui-col-xs-offset9{margin-left: 75%;} -.layui-col-xs-offset10{margin-left: 83.33333333%;} -.layui-col-xs-offset11{margin-left: 91.66666667%;} -.layui-col-xs-offset12{margin-left: 100%;} - -/* 超小屏幕(手机) */ -@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) { - .layui-container{width: 750px;} - .layui-hide-sm{display: none!important;} - .layui-show-sm-block{display: block!important;} - .layui-show-sm-inline{display: inline!important;} - .layui-show-sm-inline-block{display: inline-block!important;} - - .layui-col-sm1, .layui-col-sm2, .layui-col-sm3, .layui-col-sm4, .layui-col-sm5, .layui-col-sm6, .layui-col-sm7, .layui-col-sm8, .layui-col-sm9, .layui-col-sm10, .layui-col-sm11, .layui-col-sm12{float: left;} - .layui-col-sm1{width: 8.33333333%;} - .layui-col-sm2{width: 16.66666667%;} - .layui-col-sm3{width: 25%;} - .layui-col-sm4{width: 33.33333333%;} - .layui-col-sm5{width: 41.66666667%;} - .layui-col-sm6{width: 50%;} - .layui-col-sm7{width: 58.33333333%;} - .layui-col-sm8{width: 66.66666667%;} - .layui-col-sm9{width: 75%;} - .layui-col-sm10{width: 83.33333333%;} - .layui-col-sm11{width: 91.66666667%;} - .layui-col-sm12{width: 100%;} - /* 列偏移 */ - .layui-col-sm-offset1{margin-left: 8.33333333%;} - .layui-col-sm-offset2{margin-left: 16.66666667%;} - .layui-col-sm-offset3{margin-left: 25%;} - .layui-col-sm-offset4{margin-left: 33.33333333%;} - .layui-col-sm-offset5{margin-left: 41.66666667%;} - .layui-col-sm-offset6{margin-left: 50%;} - .layui-col-sm-offset7{margin-left: 58.33333333%;} - .layui-col-sm-offset8{margin-left: 66.66666667%;} - .layui-col-sm-offset9{margin-left: 75%;} - .layui-col-sm-offset10{margin-left: 83.33333333%;} - .layui-col-sm-offset11{margin-left: 91.66666667%;} - .layui-col-sm-offset12{margin-left: 100%;} -} -/* 中型屏幕(桌面) */ -@media screen and (min-width: 992px) { - .layui-container{width: 970px;} - .layui-hide-md{display: none!important;} - .layui-show-md-block{display: block!important;} - .layui-show-md-inline{display: inline!important;} - .layui-show-md-inline-block{display: inline-block!important;} - - .layui-col-md1, .layui-col-md2, .layui-col-md3, .layui-col-md4, .layui-col-md5, .layui-col-md6, .layui-col-md7, .layui-col-md8, .layui-col-md9, .layui-col-md10, .layui-col-md11, .layui-col-md12{float: left;} - .layui-col-md1{width: 8.33333333%;} - .layui-col-md2{width: 16.66666667%;} - .layui-col-md3{width: 25%;} - .layui-col-md4{width: 33.33333333%;} - .layui-col-md5{width: 41.66666667%;} - .layui-col-md6{width: 50%;} - .layui-col-md7{width: 58.33333333%;} - .layui-col-md8{width: 66.66666667%;} - .layui-col-md9{width: 75%;} - .layui-col-md10{width: 83.33333333%;} - .layui-col-md11{width: 91.66666667%;} - .layui-col-md12{width: 100%;} - /* 列偏移 */ - .layui-col-md-offset1{margin-left: 8.33333333%;} - .layui-col-md-offset2{margin-left: 16.66666667%;} - .layui-col-md-offset3{margin-left: 25%;} - .layui-col-md-offset4{margin-left: 33.33333333%;} - .layui-col-md-offset5{margin-left: 41.66666667%;} - .layui-col-md-offset6{margin-left: 50%;} - .layui-col-md-offset7{margin-left: 58.33333333%;} - .layui-col-md-offset8{margin-left: 66.66666667%;} - .layui-col-md-offset9{margin-left: 75%;} - .layui-col-md-offset10{margin-left: 83.33333333%;} - .layui-col-md-offset11{margin-left: 91.66666667%;} - .layui-col-md-offset12{margin-left: 100%;} -} -/* 大型屏幕(桌面) */ -@media screen and (min-width: 1200px) { - .layui-container{width: 1170px;} - .layui-hide-lg{display: none!important;} - .layui-show-lg-block{display: block!important;} - .layui-show-lg-inline{display: inline!important;} - .layui-show-lg-inline-block{display: inline-block!important;} - - .layui-col-lg1, .layui-col-lg2, .layui-col-lg3, .layui-col-lg4, .layui-col-lg5, .layui-col-lg6, .layui-col-lg7, .layui-col-lg8, .layui-col-lg9, .layui-col-lg10, .layui-col-lg11, .layui-col-lg12{float: left;} - .layui-col-lg1{width: 8.33333333%;} - .layui-col-lg2{width: 16.66666667%;} - .layui-col-lg3{width: 25%;} - .layui-col-lg4{width: 33.33333333%;} - .layui-col-lg5{width: 41.66666667%;} - .layui-col-lg6{width: 50%;} - .layui-col-lg7{width: 58.33333333%;} - .layui-col-lg8{width: 66.66666667%;} - .layui-col-lg9{width: 75%;} - .layui-col-lg10{width: 83.33333333%;} - .layui-col-lg11{width: 91.66666667%;} - .layui-col-lg12{width: 100%;} - /* 列偏移 */ - .layui-col-lg-offset1{margin-left: 8.33333333%;} - .layui-col-lg-offset2{margin-left: 16.66666667%;} - .layui-col-lg-offset3{margin-left: 25%;} - .layui-col-lg-offset4{margin-left: 33.33333333%;} - .layui-col-lg-offset5{margin-left: 41.66666667%;} - .layui-col-lg-offset6{margin-left: 50%;} - .layui-col-lg-offset7{margin-left: 58.33333333%;} - .layui-col-lg-offset8{margin-left: 66.66666667%;} - .layui-col-lg-offset9{margin-left: 75%;} - .layui-col-lg-offset10{margin-left: 83.33333333%;} - .layui-col-lg-offset11{margin-left: 91.66666667%;} - .layui-col-lg-offset12{margin-left: 100%;} -} - -/* 列间隔 */ -.layui-col-space1{margin: -0.5px;} -.layui-col-space1>*{padding: 0.5px;} -.layui-col-space2{margin: -1px;} -.layui-col-space2>*{padding: 1px;} -.layui-col-space4{margin: -2px;} -.layui-col-space4>*{padding: 2px;} -.layui-col-space5{margin: -2.5px;} -.layui-col-space5>*{padding: 2.5px;} -.layui-col-space6{margin: -3px;} -.layui-col-space6>*{padding: 3px;} -.layui-col-space8{margin: -4px;} -.layui-col-space8>*{padding: 4px;} -.layui-col-space10{margin: -5px;} -.layui-col-space10>*{padding: 5px;} -.layui-col-space12{margin: -6px;} -.layui-col-space12>*{padding: 6px;} -.layui-col-space14{margin: -7px;} -.layui-col-space14>*{padding: 7px;} -.layui-col-space15{margin: -7.5px;} -.layui-col-space15>*{padding: 7.5px;} -.layui-col-space16{margin: -8px;} -.layui-col-space16>*{padding: 8px;} -.layui-col-space18{margin: -9px;} -.layui-col-space18>*{padding: 9px;} -.layui-col-space20{margin: -10px;} -.layui-col-space20>*{padding: 10px;} -.layui-col-space22{margin: -11px;} -.layui-col-space22>*{padding: 11px;} -.layui-col-space24{margin: -12px;} -.layui-col-space24>*{padding: 12px;} -.layui-col-space25{margin: -12.5px;} -.layui-col-space25>*{padding: 12.5px;} -.layui-col-space26{margin: -13px;} -.layui-col-space26>*{padding: 13px;} -.layui-col-space28{margin: -14px;} -.layui-col-space28>*{padding: 14px;} -.layui-col-space30{margin: -15px;} -.layui-col-space30>*{padding: 15px;} - - -/** 页面元素 **/ -.layui-btn, .layui-input, .layui-textarea, .layui-upload-button, .layui-select{outline: none; -webkit-appearance: none; transition: all .3s; -webkit-transition: all .3s; box-sizing: border-box;} - -/* 引用 */.layui-elem-quote{margin-bottom: 10px; padding: 15px; line-height: 1.6; border-left: 5px solid #5FB878; border-radius: 0 2px 2px 0; background-color: #FAFAFA;} -.layui-quote-nm{border-style: solid; border-width: 1px; border-left-width: 5px; background: none;} -/* 字段集合 */.layui-elem-field{margin-bottom: 10px; padding: 0; border-width: 1px; border-style: solid;} -.layui-elem-field legend{margin-left: 20px; padding: 0 10px; font-size: 20px; font-weight: 300;} -.layui-field-title{margin: 10px 0 20px; border-width: 0; border-top-width: 1px;} -.layui-field-box{padding: 15px;} -.layui-field-title .layui-field-box{padding: 10px 0;} - -/* 进度条 */ -.layui-progress{position: relative; height: 6px; border-radius: 20px; background-color: #eee;} -.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: -20px; line-height: 18px; font-size: 12px; color: #666} -.layui-progress-big .layui-progress-text{position: static; padding: 0 10px; color: #fff;} - - -/* - - 面板 - -*/ - - -/* 折叠面板 */ -.layui-collapse{border-width: 1px; border-style: solid; border-radius: 2px;} -.layui-colla-item, -.layui-colla-content{border-top-width: 1px; border-top-style: solid;} -.layui-colla-item:first-child{border-top: none;} -.layui-colla-title{position: relative; height: 42px; line-height: 42px; padding: 0 15px 0 35px; color: #333; background-color: #FAFAFA; cursor: pointer; font-size: 14px; overflow: hidden;} -.layui-colla-content{display: none; padding: 10px 15px; line-height: 1.6; 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[pad15]{padding: 15px;} -.layui-card-body[pad20]{padding: 20px;} -.layui-card-body .layui-table{margin: 5px 0;} -.layui-card .layui-tab{margin: 0;} - -/* 常规面板 */ -.layui-panel{position: relative; border-width: 1px; border-style: solid; border-radius: 2px; box-shadow: 1px 1px 4px rgb(0 0 0 / 8%); background-color: #fff; color: #666;} - -/* 窗口面板 */ -.layui-panel-window{position: relative; padding: 15px; border-radius: 0; border-top: 5px solid #eee; background-color: #fff;} - -/* 其它辅助 */ -.layui-auxiliar-moving{position: fixed; left: 0; right: 0; top: 0; bottom: 0; width: 100%; height: 100%; background: none; z-index: 9999999999;} - - -/* - - 默认主题 - -*/ - - -/* 背景颜色 */ -.layui-bg-red{background-color: #FF5722 !important; color: #fff!important;} /*赤*/ -.layui-bg-orange{background-color: #FFB800!important; color: #fff!important;} /*橙*/ -.layui-bg-green{background-color: #009688!important; color: #fff!important;} /*绿*/ -.layui-bg-cyan{background-color: #2F4056!important; color: #fff!important;} /*青*/ -.layui-bg-blue{background-color: #1E9FFF!important; color: #fff!important;} /*蓝*/ -.layui-bg-black{background-color: #393D49!important; color: #fff!important;} /*黑*/ -.layui-bg-gray{background-color: #FAFAFA!important; color: #666!important;} /*灰*/ - -/* 边框 */ -.layui-border, -.layui-quote-nm, -.layui-elem-field, -.layui-collapse, -.layui-panel, -.layui-colla-item, -.layui-colla-content, -.layui-badge-rim, -.layui-tab-title, -.layui-tab-title .layui-this:after, -.layui-tab-bar, -.layui-tab-card, - -.layui-input, .layui-textarea, .layui-select, -.layui-form-pane .layui-form-label, -.layui-form-pane .layui-form-item[pane], -.layui-layedit, .layui-layedit-tool{border-color: #eee;} - -.layui-border{border-width: 1px; border-style: solid; color: #666!important;} -.layui-border-red{border-width: 1px; border-style: solid; border-color: #FF5722!important; color: #FF5722!important;} -.layui-border-orange{border-width: 1px; border-style: solid; border-color: #FFB800!important; color: #FFB800!important;} -.layui-border-green{border-width: 1px; border-style: solid; border-color: #009688!important; color: #009688!important;} -.layui-border-cyan{border-width: 1px; border-style: solid; border-color: #2F4056!important; color: #2F4056!important;} -.layui-border-blue{border-width: 1px; border-style: solid; border-color: #1E9FFF!important; color: #1E9FFF!important;} -.layui-border-black{border-width: 1px; border-style: solid; border-color: #393D49!important; color: #393D49!important;} - -/* 背景边框 */ -.layui-timeline-item:before{background-color: #eee;} - -/* 文本区域 */ -.layui-text{line-height: 1.6; font-size: 14px; color: #666;} -.layui-text h1, -.layui-text h2, -.layui-text h3{font-weight: 500; color: #333;} -.layui-text h1{font-size: 30px;} -.layui-text h2{font-size: 24px;} -.layui-text h3{font-size: 18px;} -.layui-text a:not(.layui-btn){color: #01AAED;} -.layui-text a:not(.layui-btn):hover{text-decoration: underline;} -.layui-text ul{padding: 5px 0 5px 15px;} -.layui-text ul li{margin-top: 5px; list-style-type: disc;} -.layui-text em, -.layui-word-aux{color: #999 !important; padding-left: 5px !important; padding-right: 5px !important;} -.layui-text p{margin: 10px 0;} -.layui-text p:first-child{margin-top: 0;} - -/* 字体大小及颜色 */ -.layui-font-12{font-size: 12px !important;;} -.layui-font-14{font-size: 14px !important;} -.layui-font-16{font-size: 16px !important;} -.layui-font-18{font-size: 18px !important;} -.layui-font-20{font-size: 20px !important;} - -.layui-font-red{color: #FF5722 !important;} /*赤*/ -.layui-font-orange{color: #FFB800!important;} /*橙*/ -.layui-font-green{color: #009688!important;} /*绿*/ -.layui-font-cyan{color: #2F4056!important;} /*青*/ -.layui-font-blue{color: #01AAED!important;} /*蓝*/ -.layui-font-black{color: #000!important;} /*黑*/ -.layui-font-gray{color: #c2c2c2!important;} /*灰*/ - - - -/* - - 按钮 - -*/ - -.layui-btn{display: inline-block; vertical-align: middle; height: 38px; line-height: 38px; border: 1px solid transparent; padding: 0 18px; background-color: #009688; color: #fff; white-space: nowrap; text-align: center; font-size: 14px; 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{padding: 0 2px; vertical-align: middle\0; vertical-align: bottom;} - -/* 原始 */.layui-btn-primary{border-color: #d2d2d2; background: none; color: #666;} -.layui-btn-primary:hover{border-color: #009688; color: #333;} -/* 百搭 */.layui-btn-normal{background-color: #1E9FFF;} -/* 暖色 */.layui-btn-warm{background-color: #FFB800;} -/* 警告 */.layui-btn-danger{background-color: #FF5722;} -/* 选中 */.layui-btn-checked{background-color: #5FB878;} -/* 禁用 */.layui-btn-disabled, .layui-btn-disabled:hover, .layui-btn-disabled:active{border-color: #eee !important; background-color: #FBFBFB !important; color: #d2d2d2 !important; cursor: not-allowed !important; opacity: 1;} - -/* 大型 */.layui-btn-lg{height: 44px; line-height: 44px; padding: 0 25px; font-size: 16px;} -/* 小型 */.layui-btn-sm{height: 30px; line-height: 30px; padding: 0 10px; font-size: 12px;} -/* 超小 */.layui-btn-xs{height: 22px; line-height: 22px; padding: 0 5px; font-size: 12px;} -.layui-btn-xs i{font-size: 12px !important;} -/* 按钮组 */.layui-btn-group{display: inline-block; vertical-align: middle; font-size: 0;} -.layui-btn-group .layui-btn{margin-left: 0!important; margin-right: 0!important; border-left: 1px solid rgba(255,255,255,.5); border-radius: 0;} -.layui-btn-group .layui-btn-primary{border-left: none;} -.layui-btn-group .layui-btn-primary:hover{border-color: #d2d2d2; color: #009688;} -.layui-btn-group .layui-btn:first-child{border-left: none; border-radius: 2px 0 0 2px;} -.layui-btn-group .layui-btn-primary:first-child{border-left: 1px solid #d2d2d2;} -.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; color: rgba(0,0,0,.85); border-radius: 2px;} -.layui-input::-webkit-input-placeholder, -.layui-textarea::-webkit-input-placeholder, -.layui-select::-webkit-input-placeholder{line-height: 1.3;} -.layui-input, .layui-textarea{display: block; width: 100%; padding-left: 10px;} -.layui-input:hover, .layui-textarea:hover{border-color: #eee !important;} -.layui-input:focus, .layui-textarea:focus{border-color: #d2d2d2 !important;} -.layui-textarea{position: relative; min-height: 100px; height: auto; line-height: 20px; padding: 6px 10px; resize: vertical;} -.layui-select{padding: 0 10px;} -.layui-form select, -.layui-form input[type=checkbox], -.layui-form input[type=radio]{display: none;} -.layui-form *[lay-ignore]{display: initial;} - -.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: 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;} -.layui-input-inline{display: inline-block; vertical-align: middle;} -.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: 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;} - - -/* 下拉选择 */.layui-form-select{position: relative;} -.layui-form-select .layui-input{padding-right: 30px; cursor: pointer;} -.layui-form-select .layui-edge{position: absolute; right: 10px; top: 50%; margin-top: -3px; cursor: pointer; border-width: 6px; border-top-color: #c2c2c2; border-top-style: solid; transition: all .3s; -webkit-transition: all .3s;} -.layui-form-select dl{display: none; position: absolute; left: 0; top: 42px; padding: 5px 0; z-index: 899; min-width: 100%; border: 1px solid #eee; max-height: 300px; overflow-y: auto; background-color: #fff; border-radius: 2px; box-shadow: 1px 1px 4px rgb(0 0 0 / 8%); box-sizing: border-box;} -.layui-form-select dl dt, -.layui-form-select dl dd{padding: 0 10px; line-height: 36px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;} -.layui-form-select dl dt{font-size: 12px; color: #999;} -.layui-form-select dl dd{cursor: pointer;} -.layui-form-select dl dd:hover{background-color: #F6F6F6; -webkit-transition: .5s all; transition: .5s all;} -.layui-form-select .layui-select-group dd{padding-left: 20px;} -.layui-form-select dl dd.layui-select-tips{padding-left: 10px !important; color: #999;} -.layui-form-select dl dd.layui-this{background-color: #5FB878; color: #fff;} -/*.layui-form-select dl dd.layui-this{background-color: #F6F6F6; color: #5FB878; font-weight: 700;}*/ -.layui-form-select dl dd.layui-disabled{background-color: #fff;} -.layui-form-selected dl{display: block;} -.layui-form-selected .layui-edge{margin-top: -9px; -webkit-transform:rotate(180deg); transform: rotate(180deg);} -.layui-form-selected .layui-edge{margin-top: -3px\0; } -:root .layui-form-selected .layui-edge{margin-top: -9px\0/IE9;} -.layui-form-selectup dl{top: auto; bottom: 42px;} -.layui-select-none{margin: 5px 0; text-align: center; color: #999;} - -.layui-select-disabled .layui-disabled{border-color: #eee !important;} -.layui-select-disabled .layui-edge{border-top-color: #d2d2d2} - -/* 复选框 */.layui-form-checkbox{position: relative; display: inline-block; vertical-align: middle; height: 30px; line-height: 30px; margin-right: 10px; padding-right: 30px; background-color: #fff; cursor: pointer; font-size: 0; -webkit-transition: .1s linear; transition: .1s linear; box-sizing: border-box;} -.layui-form-checkbox:hover{} -.layui-form-checkbox *{display: inline-block; vertical-align: middle;} -.layui-form-checkbox span{padding: 0 10px; height: 100%; font-size: 14px; border-radius: 2px 0 0 2px; background-color: #d2d2d2; color: #fff; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;} -.layui-form-checkbox:hover span{background-color: #c2c2c2;} -.layui-form-checkbox i{position: absolute; right: 0; top: 0; width: 30px; height: 28px; border: 1px solid #d2d2d2; border-left: none; border-radius: 0 2px 2px 0; color: #fff; font-size: 20px; text-align: center;} -.layui-form-checkbox:hover i{border-color: #c2c2c2; color: #c2c2c2;} -.layui-form-checked, .layui-form-checked:hover{border-color: #5FB878;} -.layui-form-checked span, .layui-form-checked:hover span{background-color: #5FB878;} -.layui-form-checked i, .layui-form-checked:hover i{color: #5FB878;} -.layui-form-item .layui-form-checkbox{margin-top: 4px;} - -/* 复选框-原始风格 */.layui-form-checkbox[lay-skin="primary"]{height: auto!important; line-height: normal!important; min-width: 18px; min-height: 18px; border: none!important; margin-right: 0; padding-left: 28px; padding-right: 0; background: none;} -.layui-form-checkbox[lay-skin="primary"] span{padding-left: 0; padding-right: 15px; line-height: 18px; background: none; color: #666;} -.layui-form-checkbox[lay-skin="primary"] i{right: auto; left: 0; width: 16px; height: 16px; line-height: 16px; border: 1px solid #d2d2d2; font-size: 12px; border-radius: 2px; background-color: #fff; -webkit-transition: .1s linear; transition: .1s linear;} -.layui-form-checkbox[lay-skin="primary"]:hover i{border-color: #5FB878; color: #fff;} -.layui-form-checked[lay-skin="primary"] i{border-color: #5FB878 !important; background-color: #5FB878; color: #fff;} -.layui-checkbox-disabled[lay-skin="primary"] span{background: none!important; color: #c2c2c2!important;} -.layui-checkbox-disabled[lay-skin="primary"]:hover i{border-color: #d2d2d2;} -.layui-form-item .layui-form-checkbox[lay-skin="primary"]{margin-top: 10px;} - -/* 复选框-开关风格 */.layui-form-switch{position: relative; display: inline-block; vertical-align: middle; height: 22px; line-height: 22px; min-width: 35px; padding: 0 5px; margin-top: 8px; border: 1px solid #d2d2d2; border-radius: 20px; cursor: pointer; background-color: #fff; -webkit-transition: .1s linear; transition: .1s linear;} -.layui-form-switch i{position: absolute; left: 5px; top: 3px; width: 16px; height: 16px; border-radius: 20px; background-color: #d2d2d2; -webkit-transition: .1s linear; transition: .1s linear;} -.layui-form-switch em{position: relative; top: 0; width: 25px; margin-left: 21px; padding: 0!important; text-align: center!important; color: #999!important; font-style: normal!important; font-size: 12px;} -.layui-form-onswitch{border-color: #5FB878; background-color: #5FB878;} -.layui-form-onswitch i{left: 100%; margin-left: -21px; background-color: #fff;} -.layui-form-onswitch em{margin-left: 5px; margin-right: 21px; color: #fff!important;} - -.layui-checkbox-disabled{border-color: #eee !important;} -.layui-checkbox-disabled span{background-color: #eee !important;} -.layui-checkbox-disabled i{border-color: #eee !important;} -.layui-checkbox-disabled em{color: #d2d2d2 !important;} -.layui-checkbox-disabled: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; font-size: 14px;} -.layui-form-radio>i{margin-right: 8px; font-size: 22px; color: #c2c2c2;} -.layui-form-radioed, -.layui-form-radioed>i, -.layui-form-radio:hover *{color: #5FB878;} -.layui-radio-disabled>i{color: #eee !important;} -.layui-radio-disabled *{color: #c2c2c2!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: #FAFAFA; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; box-sizing: border-box;} -.layui-form-pane .layui-input-inline{margin-left: -1px;} -.layui-form-pane .layui-input-block{margin-left: 110px; left: -1px;} -.layui-form-pane .layui-input{border-radius: 0 2px 2px 0;} -.layui-form-pane .layui-form-text .layui-form-label{float: none; width: 100%; border-radius: 2px; box-sizing: border-box; text-align: left;} -.layui-form-pane .layui-form-text .layui-input-inline{display: block; margin: 0; top: -1px; clear: both;} -.layui-form-pane .layui-form-text .layui-input-block{margin: 0; left: 0; top: -1px;} -.layui-form-pane .layui-form-text .layui-textarea{min-height: 100px; border-radius: 0 0 2px 2px;} -.layui-form-pane .layui-form-checkbox{margin: 4px 0 4px 10px;} -.layui-form-pane .layui-form-switch, -.layui-form-pane .layui-form-radio{margin-top: 6px; margin-left: 10px; } -.layui-form-pane .layui-form-item[pane]{position: relative; border-width: 1px; border-style: solid;} -.layui-form-pane .layui-form-item[pane] .layui-form-label{position: absolute; left: 0; top: 0; height: 100%; border-width: 0px; border-right-width: 1px;} -.layui-form-pane .layui-form-item[pane] .layui-input-inline{margin-left: 110px;} - -/** 表单响应式 **/ -@media screen and (max-width: 450px) { - .layui-form-item .layui-form-label{text-overflow: ellipsis; overflow: hidden; white-space: nowrap;} - .layui-form-item .layui-inline{display: block; margin-right: 0; margin-bottom: 20px; clear: both;} - .layui-form-item .layui-inline:after{content:'\20'; clear:both; display:block; height:0;} - .layui-form-item .layui-input-inline{display: block; float: none; left: -3px; width: auto !important; margin: 0 0 10px 112px; } - .layui-form-item .layui-input-inline+.layui-form-mid{margin-left: 110px; top: -5px; padding: 0;} - .layui-form-item .layui-form-checkbox{margin-right: 5px; margin-bottom: 5px;} -} - -/** 富文本编辑器 **/ -.layui-layedit{border-width: 1px; border-style: solid; border-radius: 2px;} -.layui-layedit-tool{padding: 3px 5px; border-bottom-width: 1px; border-bottom-style: solid; font-size: 0;} -.layedit-tool-fixed{position: fixed; top: 0; border-top: 1px solid #eee;} -.layui-layedit-tool .layedit-tool-mid, -.layui-layedit-tool .layui-icon{display: inline-block; vertical-align: middle; text-align: center; font-size: 14px;} -.layui-layedit-tool .layui-icon{position: relative; width: 32px; height: 30px; line-height: 30px; margin: 3px 5px; border-radius: 2px; color: #777; cursor: pointer; border-radius: 2px;} -.layui-layedit-tool .layui-icon:hover{color: #393D49;} -.layui-layedit-tool .layui-icon:active{color: #000;} -.layui-layedit-tool .layedit-tool-active{background-color: #eee; color: #000;} -.layui-layedit-tool .layui-disabled, -.layui-layedit-tool .layui-disabled:hover{color: #d2d2d2; cursor: not-allowed;} -.layui-layedit-tool .layedit-tool-mid{width: 1px; height: 18px; margin: 0 10px; background-color: #d2d2d2;} - -.layedit-tool-html{width: 50px !important; font-size: 30px !important;} -.layedit-tool-b, -.layedit-tool-code, -.layedit-tool-help{font-size: 16px !important;} -.layedit-tool-d, -.layedit-tool-unlink, -.layedit-tool-face, -.layedit-tool-image{font-size: 18px !important;} -.layedit-tool-image input{position: absolute; font-size: 0; left: 0; top: 0; width: 100%; height: 100%; opacity: 0.01; filter: Alpha(opacity=1); cursor: pointer;} - -.layui-layedit-iframe iframe{display: block; width: 100%;} -#LAY_layedit_code{overflow: hidden;} - -/** 分页 **/ -.layui-laypage{display: inline-block; *display: inline; *zoom: 1; vertical-align: middle; margin: 10px 0; font-size: 0;} -.layui-laypage>a:first-child, -.layui-laypage>a:first-child em{border-radius: 2px 0 0 2px;} -.layui-laypage>a:last-child, -.layui-laypage>a:last-child em{border-radius: 0 2px 2px 0;} -.layui-laypage>*:first-child{margin-left: 0!important;} -.layui-laypage>*:last-child{margin-right: 0!important;} -.layui-laypage a, -.layui-laypage span, -.layui-laypage input, -.layui-laypage button, -.layui-laypage select{border: 1px solid #eee;} -.layui-laypage a, -.layui-laypage span{display: inline-block; *display: inline; *zoom: 1; vertical-align: middle; padding: 0 15px; height: 28px; line-height: 28px; margin: 0 -1px 5px 0; background-color: #fff; color: #333; font-size: 12px;} -.layui-laypage a:hover{color: #009688;} -.layui-laypage em{font-style: normal;} -.layui-laypage .layui-laypage-spr{color:#999; font-weight: 700;} -.layui-laypage a{ text-decoration: none;} -.layui-laypage .layui-laypage-curr{position: relative;} -.layui-laypage .layui-laypage-curr em{position: relative; color: #fff;} -.layui-laypage .layui-laypage-curr .layui-laypage-em{position: absolute; left: -1px; top: -1px; padding: 1px; width: 100%; height: 100%; background-color: #009688; } -.layui-laypage-em{border-radius: 2px;} -.layui-laypage-prev em, -.layui-laypage-next em{font-family: Sim sun; font-size: 16px;} - -.layui-laypage .layui-laypage-count, -.layui-laypage .layui-laypage-limits, -.layui-laypage .layui-laypage-refresh, -.layui-laypage .layui-laypage-skip{margin-left: 10px; margin-right: 10px; padding: 0; border: none;} -.layui-laypage .layui-laypage-limits, -.layui-laypage .layui-laypage-refresh{vertical-align: top;} -.layui-laypage .layui-laypage-refresh i{font-size: 18px; cursor: pointer;} -.layui-laypage select{height: 22px; padding: 3px; border-radius: 2px; cursor: pointer;} -.layui-laypage .layui-laypage-skip{height: 30px; line-height: 30px; color: #999;} -.layui-laypage input, .layui-laypage button{height: 30px; line-height: 30px; border-radius: 2px; vertical-align: top; background-color: #fff; box-sizing: border-box;} -.layui-laypage input{display: inline-block; width: 40px; margin: 0 10px; padding: 0 3px; text-align: center;} -.layui-laypage input:focus, -.layui-laypage select:focus{border-color: #009688!important;} -.layui-laypage button{margin-left: 10px; padding: 0 10px; cursor: pointer;} - -/** 流加载 **/ -.layui-flow-more{margin: 10px 0; text-align: center; color: #999; font-size: 14px;} -.layui-flow-more a{ height: 32px; line-height: 32px; } -.layui-flow-more a *{display: inline-block; vertical-align: top;} -.layui-flow-more a cite{padding: 0 20px; border-radius: 3px; background-color: #eee; color: #333; font-style: normal;} -.layui-flow-more a cite:hover{opacity: 0.8;} -.layui-flow-more a i{font-size: 30px; color: #737383;} - -/** 表格 **/ -.layui-table{width: 100%; margin: 10px 0; background-color: #fff; color: #666;} -.layui-table tr{transition: all .3s; -webkit-transition: all .3s;} -.layui-table th{text-align: left; font-weight: 400;} - -.layui-table thead tr, -.layui-table-header, -.layui-table-tool, -.layui-table-total, -.layui-table-total tr, -.layui-table-patch, -.layui-table-mend, -.layui-table[lay-even] tr:nth-child(even), -.layui-table tbody tr:hover, -.layui-table-hover, -.layui-table-click{background-color: #FAFAFA;} - -.layui-table th, -.layui-table td, -.layui-table[lay-skin="line"], -.layui-table[lay-skin="row"], -.layui-table-view, -.layui-table-tool, -.layui-table-header, -.layui-table-col-set, -.layui-table-total, -.layui-table-page, -.layui-table-fixed-r, -.layui-table-tips-main, -.layui-table-grid-down{border-width: 1px; border-style: solid; border-color: #eee;} - -.layui-table th, .layui-table td{position: relative; padding: 9px 15px; min-height: 20px; line-height: 20px; font-size: 14px;} - -.layui-table[lay-skin="line"] th, .layui-table[lay-skin="line"] td{border-width: 0; border-bottom-width: 1px;} -.layui-table[lay-skin="row"] th, .layui-table[lay-skin="row"] td{border-width: 0;border-right-width: 1px;} -.layui-table[lay-skin="nob"] th, .layui-table[lay-skin="nob"] td{border: none;} - -.layui-table img{max-width:100px;} - -/* 大表格 */.layui-table[lay-size="lg"] th, -.layui-table[lay-size="lg"] td{padding-top: 15px; padding-right: 30px; padding-bottom: 15px; padding-left: 30px;} -.layui-table-view .layui-table[lay-size="lg"] .layui-table-cell{height: 40px; line-height: 40px;} -/* 小表格 */.layui-table[lay-size="sm"] th, -.layui-table[lay-size="sm"] td{padding-top: 5px; padding-right: 10px; padding-bottom: 5px; padding-left: 10px; font-size: 12px;} -.layui-table-view .layui-table[lay-size="sm"] .layui-table-cell{height: 20px; line-height: 20px;} - -/* 数据表格 */ -.layui-table[lay-data]{display: none;} -.layui-table-box{position: relative; overflow: hidden;} -.layui-table-view{margin: 10px 0;} -.layui-table-view .layui-table{position: relative; width: auto; margin: 0;} -.layui-table-view .layui-table[lay-skin="line"]{border-width: 0; border-right-width: 1px;} -.layui-table-view .layui-table[lay-skin="row"]{border-width: 0; border-bottom-width: 1px;} -.layui-table-view .layui-table th, -.layui-table-view .layui-table td{padding: 5px 0; border-top: none; border-left: none;} -.layui-table-view .layui-table th.layui-unselect .layui-table-cell span{cursor: pointer;} -.layui-table-view .layui-table td{cursor: default;} -.layui-table-view .layui-table td[data-edit="text"]{cursor: text;} -.layui-table-view .layui-form-checkbox[lay-skin="primary"] i{width: 18px; height: 18px;} -.layui-table-view .layui-form-radio{line-height: 0; padding: 0;} -.layui-table-view .layui-form-radio>i{margin: 0; font-size: 20px;} -.layui-table-init{position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-align: center; z-index: 110;} -.layui-table-init .layui-icon{position: absolute; left: 50%; top: 50%; margin: -15px 0 0 -15px; font-size: 30px; color: #c2c2c2;} -.layui-table-header{border-width: 0; border-bottom-width: 1px; overflow: hidden;} -.layui-table-header .layui-table{margin-bottom: -1px;} - -.layui-table-tool .layui-inline[lay-event]{position: relative; width: 26px; height: 26px; padding: 5px; line-height: 16px; margin-right: 10px; text-align: center; color: #333; border: 1px solid #ccc; cursor: pointer; -webkit-transition: .5s all; transition: .5s all;} -.layui-table-tool .layui-inline[lay-event]:hover{border: 1px solid #999;} -.layui-table-tool-temp{padding-right: 120px;} -.layui-table-tool-self{position: absolute; right: 17px; top: 10px;} -.layui-table-tool .layui-table-tool-self .layui-inline[lay-event]{margin: 0 0 0 10px;} -.layui-table-tool-panel{position: absolute; top: 29px; left: -1px; padding: 5px 0; min-width: 150px; min-height: 40px; border: 1px solid #d2d2d2; text-align: left; overflow-y: auto; background-color: #fff; box-shadow: 0 2px 4px rgba(0,0,0,.12);} -.layui-table-tool-panel li{padding: 0 10px; line-height: 30px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -webkit-transition: .5s all; transition: .5s all;} -.layui-table-tool-panel li .layui-form-checkbox[lay-skin="primary"]{width: 100%;} -.layui-table-tool-panel li:hover{background-color: #F6F6F6;} -.layui-table-tool-panel li .layui-form-checkbox[lay-skin="primary"]{padding-left: 28px;} -.layui-table-tool-panel li .layui-form-checkbox[lay-skin="primary"] i{position: absolute; left: 0; top: 0;} -.layui-table-tool-panel li .layui-form-checkbox[lay-skin="primary"] span{padding: 0;} -.layui-table-tool .layui-table-tool-self .layui-table-tool-panel{left: auto; right: -1px;} - -.layui-table-col-set{position: absolute; right: 0; top: 0; width: 20px; height: 100%; border-width: 0; border-left-width: 1px; background-color: #fff;} - -.layui-table-sort{width: 10px; height: 20px; margin-left: 5px; cursor: pointer!important;} -.layui-table-sort .layui-edge{position: absolute; left: 5px; border-width: 5px;} -.layui-table-sort .layui-table-sort-asc{top: 3px; border-top: none; border-bottom-style: solid; border-bottom-color: #b2b2b2;} -.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color: #666;} -.layui-table-sort .layui-table-sort-desc{bottom: 5px; border-bottom: none; border-top-style: solid; border-top-color: #b2b2b2;} -.layui-table-sort .layui-table-sort-desc:hover{border-top-color: #666;} -.layui-table-sort[lay-sort="asc"] .layui-table-sort-asc{border-bottom-color: #000;} -.layui-table-sort[lay-sort="desc"] .layui-table-sort-desc{border-top-color: #000;} - -.layui-table-cell{height: 28px; line-height: 28px; padding: 0 15px; position: relative; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; box-sizing: border-box;} -.layui-table-cell .layui-form-checkbox[lay-skin="primary"]{top: -1px; padding: 0;} -.layui-table-cell .layui-table-link{color: #01AAED;} - -.laytable-cell-checkbox, -.laytable-cell-radio, -.laytable-cell-space, -.laytable-cell-numbers{padding: 0; text-align: center;} - -.layui-table-body{position: relative; overflow: auto; margin-right: -1px; margin-bottom: -1px;} -.layui-table-body .layui-none{line-height: 26px; padding: 30px 15px; text-align: center; color: #999;} -.layui-table-fixed{position: absolute; left: 0; top: 0; z-index: 101;} -.layui-table-fixed .layui-table-body{overflow: hidden;} -.layui-table-fixed-l{box-shadow: 1px 0 8px rgba(0,0,0,.08);} -.layui-table-fixed-r{left: auto; right: -1px; border-width: 0; border-left-width: 1px; box-shadow: -1px 0 8px rgba(0,0,0,.08);} -.layui-table-fixed-r .layui-table-header{position: relative; overflow: visible;} -.layui-table-mend{position: absolute; right: -49px; top: 0; height: 100%; width: 50px;} - -.layui-table-tool{position: relative; z-index: 890; width: 100%; min-height: 50px; line-height: 30px; padding: 10px 15px; border-width: 0; border-bottom-width: 1px; /*box-shadow: 0 1px 8px 0 rgb(0 0 0 / 8%);*/} -.layui-table-tool .layui-btn-container{margin-bottom: -10px;} - -.layui-table-total{margin-bottom: -1px; border-width: 0; border-top-width: 1px; overflow: hidden;} - - -.layui-table-page{position: relative; width: 100%; padding: 7px 7px 0; border-width: 0; border-top-width: 1px; height: 41px; margin-bottom: -1px; font-size: 12px; white-space: nowrap; overflow: hidden;} -.layui-table-page>div{height: 26px;} -.layui-table-page .layui-laypage{margin: 0;} -.layui-table-page .layui-laypage a, -.layui-table-page .layui-laypage span{height: 26px; line-height: 26px; margin-bottom: 10px; border: none; background: none;} -.layui-table-page .layui-laypage a, -.layui-table-page .layui-laypage span.layui-laypage-curr{padding: 0 12px;} -.layui-table-page .layui-laypage span{margin-left: 0; padding: 0;} -.layui-table-page .layui-laypage .layui-laypage-prev{margin-left: -7px!important;} -.layui-table-page .layui-laypage .layui-laypage-curr .layui-laypage-em{left: 0; top: 0; padding: 0;} -.layui-table-page .layui-laypage input, -.layui-table-page .layui-laypage button{height: 26px; line-height: 26px; } -.layui-table-page .layui-laypage input{width: 40px;} -.layui-table-page .layui-laypage button{padding: 0 10px;} -.layui-table-page select{height: 18px;} -.layui-table-view select[lay-ignore]{display: inline-block;} - -.layui-table-patch .layui-table-cell{padding: 0; width: 30px;} - -.layui-table-edit{position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding: 0 14px 1px; border-radius: 0; box-shadow: 1px 1px 20px rgba(0,0,0,.15)} -.layui-table-edit:focus{border-color: #5FB878!important;} -select.layui-table-edit{padding: 0 0 0 10px; border-color: #d2d2d2;} -.layui-table-view .layui-form-switch, -.layui-table-view .layui-form-checkbox, -.layui-table-view .layui-form-radio{top: 0; margin: 0; box-sizing: content-box;} -.layui-table-view .layui-form-checkbox{top: -1px; height: 26px; line-height: 26px;} -.layui-table-view .layui-form-checkbox i{height: 26px;} - -/* 展开溢出的单元格 */ -.layui-table-grid .layui-table-cell{overflow: visible;} -.layui-table-grid-down{position: absolute; top: 0; right: 0; width: 26px; height: 100%; padding: 5px 0; border-width: 0; border-left-width: 1px; text-align: center; background-color: #fff; color: #999; cursor: pointer;} -.layui-table-grid-down .layui-icon{position: absolute; top: 50%; left: 50%; margin: -8px 0 0 -8px;} -.layui-table-grid-down:hover{background-color: #fbfbfb;} - -body .layui-table-tips .layui-layer-content{background: none; padding: 0; box-shadow: 0 1px 6px rgba(0,0,0,.12);} -.layui-table-tips-main{margin: -44px 0 0 -1px; max-height: 150px; padding: 8px 15px; font-size: 14px; overflow-y: scroll; background-color: #fff; color: #666;} -.layui-table-tips-c{position: absolute; right: -3px; top: -13px; width: 20px; height: 20px; padding: 3px; cursor: pointer; background-color: #666; border-radius: 50%; color: #fff;} -.layui-table-tips-c:hover{background-color: #777;} -.layui-table-tips-c:before{position: relative; right: -2px;} - -/** 文件上传 **/ -.layui-upload-file{display: none!important; opacity: .01; filter: Alpha(opacity=1);} -.layui-upload-list{margin: 10px 0;} -.layui-upload-choose{max-width: 200px; padding: 0 10px; color: #999; font-size: 14px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;} -.layui-upload-drag{position: relative; display: inline-block; padding: 30px; border: 1px dashed #e2e2e2; background-color: #fff; text-align: center; cursor: pointer; color: #999;} -.layui-upload-drag .layui-icon{font-size: 50px; color: #009688;} -.layui-upload-drag[lay-over]{border-color: #009688} -.layui-upload-form{display: inline-block;} -.layui-upload-iframe{position: absolute; width: 0; height: 0; border: 0; visibility: hidden} -.layui-upload-wrap{position: relative; display: inline-block; vertical-align: middle;} -.layui-upload-wrap .layui-upload-file{display: block!important; position: absolute; left: 0; top: 0; z-index: 10; font-size: 100px; width: 100%; height: 100%; opacity: .01; filter: Alpha(opacity=1); cursor: pointer;} -.layui-btn-container .layui-upload-choose{padding-left: 0;} - - -/* 基础菜单元素 */ -.layui-menu{position: relative; margin: 5px 0; background-color: #fff; box-sizing: border-box;} -.layui-menu *{box-sizing: border-box;} -.layui-menu li, -.layui-menu-body-title a{padding: 5px 15px;} -.layui-menu li{position: relative; margin: 1px 0; width: calc(100% + 1px); line-height: 26px; color: rgba(0,0,0,.8); font-size: 14px; white-space: nowrap; cursor: pointer; transition: all .3s;} -.layui-menu li:hover{background-color: #F6F6F6; } - -.layui-menu-item-parent:hover>.layui-menu-body-panel{display: block; animation-name: layui-fadein; animation-duration: 0.3s; animation-fill-mode: both; animation-delay:.2s;} -.layui-menu-item-parent .layui-menu-body-title, -.layui-menu-item-group .layui-menu-body-title{padding-right: 25px;} - -.layui-menu .layui-menu-item-group:hover, -.layui-menu .layui-menu-item-none:hover, -.layui-menu .layui-menu-item-divider:hover{background: none; cursor: default;} -.layui-menu .layui-menu-item-group>ul{margin: 5px 0 -5px;} -.layui-menu .layui-menu-item-group>.layui-menu-body-title{color: rgba(0,0,0,.35); user-select: none;} -.layui-menu .layui-menu-item-none{color: rgba(0,0,0,.35); cursor: default;} - -.layui-menu .layui-menu-item-none{text-align: center;} -.layui-menu .layui-menu-item-divider{margin: 5px 0; padding: 0; height: 0; line-height: 0; border-bottom: 1px solid #eee; overflow: hidden;} - -.layui-menu .layui-menu-item-up:hover, -.layui-menu .layui-menu-item-down:hover{cursor: pointer;} -.layui-menu .layui-menu-item-up>.layui-menu-body-title{ color: rgba(0,0,0,.8);} -.layui-menu .layui-menu-item-up>ul{visibility: hidden; height: 0; overflow: hidden;} -.layui-menu .layui-menu-item-up>.layui-menu-body-title:hover>.layui-icon, -.layui-menu .layui-menu-item-down:hover>.layui-menu-body-title>.layui-icon{color: rgba(0,0,0,1);} -.layui-menu .layui-menu-item-down>ul{visibility: visible; height: auto;} - -.layui-menu .layui-menu-item-checked, -.layui-menu .layui-menu-item-checked2{background-color: #F6F6F6!important; color: #5FB878;} -.layui-menu .layui-menu-item-checked a, -.layui-menu .layui-menu-item-checked2 a{color: #5FB878;} -.layui-menu .layui-menu-item-checked:after{position: absolute; right: 0; top: 0; bottom: 0; border-right: 3px solid #5FB878; content: "";} - -.layui-menu-body-title{position: relative; overflow: hidden; text-overflow: ellipsis;} -.layui-menu-body-title a{display: block; margin: -5px -15px; color: rgba(0,0,0,.8);} -.layui-menu-body-title a:hover{transition: all .3s;} -.layui-menu-body-title>.layui-icon{position: absolute; right: 0; top: 0; font-size: 14px;} -.layui-menu-body-title>.layui-icon:hover{transition: all .3s;} -.layui-menu-body-title>.layui-icon-right{right: -1px;} -.layui-menu-body-panel{display: none; position: absolute; top: -7px; left: 100%; z-index: 1000; margin-left: 13px; padding: 5px 0;} -.layui-menu-body-panel:before{content: ""; position: absolute; width: 20px; left: -16px; top: 0; bottom: 0;} -.layui-menu-body-panel-left{left: auto; right: 100%; margin: 0 13px 0;} -.layui-menu-body-panel-left:before{left: auto; right: -16px;} - -.layui-menu-lg li{line-height: 32px;} -.layui-menu-lg li:hover, -.layui-menu-lg .layui-menu-body-title a:hover{background: none; color: #5FB878;} -.layui-menu-lg li .layui-menu-body-panel{margin-left: 14px} -.layui-menu-lg li .layui-menu-body-panel-left{margin: 0 15px 0;} - - -/* 下拉菜单 */ -.layui-dropdown{position: absolute; left: -999999px; top: -999999px; z-index: 66666666; margin: 5px 0; min-width: 100px;} -.layui-dropdown:before{content:""; position: absolute; width: 100%; height: 6px; left: 0; top: -6px;} - - - -/** 导航菜单 **/ -.layui-nav{position: relative; padding: 0 20px; background-color: #393D49; color: #fff; border-radius: 2px; font-size: 0; box-sizing: border-box;} -.layui-nav *{font-size: 14px;} -.layui-nav .layui-nav-item{position: relative; display: inline-block; *display: inline; *zoom: 1; vertical-align: middle; line-height: 60px;} -.layui-nav .layui-nav-item a{display: block; padding: 0 20px; color: #fff; color: rgba(255,255,255,.7); transition: all .3s; -webkit-transition: all .3s;} -.layui-nav-bar, -.layui-nav .layui-this:after{content: ""; position: absolute; left: 0; top: 0; width: 0; height: 5px; background-color: #5FB878; transition: all .2s; -webkit-transition: all .2s; pointer-events: none;} -.layui-nav-bar{z-index: 1000;} -.layui-nav[lay-bar="disabled"] .layui-nav-bar{display: none;} -.layui-nav[lay-bar="disabled"].layui-this:after{} -.layui-nav .layui-this a -,.layui-nav .layui-nav-item a:hover{color: #fff;} -.layui-nav .layui-this:after{top: auto; bottom: 0; width: 100%;} -.layui-nav-img{width: 30px; height: 30px; margin-right: 10px; border-radius: 50%;} - -.layui-nav .layui-nav-more{position: absolute; top: 0; right: 3px; left: auto !important; margin-top: 0; font-size: 12px; cursor: pointer; transition: all .2s; -webkit-transition: all .2s;} -.layui-nav .layui-nav-mored, -.layui-nav-itemed > a .layui-nav-more{transform: rotate(180deg);} - - -.layui-nav-child{display: none; position: absolute; left: 0; top: 65px; min-width: 100%; line-height: 36px; padding: 5px 0; box-shadow: 0 2px 4px rgba(0,0,0,.12); border: 1px solid #eee; background-color: #fff; z-index: 100; border-radius: 2px; white-space: nowrap;} -.layui-nav .layui-nav-child a{color: #666; color: rgba(0,0,0,.8);} -.layui-nav .layui-nav-child a:hover{background-color: #F6F6F6; color: rgba(0,0,0,.8);} -.layui-nav-child dd{margin: 1px 0; position: relative;} -.layui-nav-child dd.layui-this{background-color: #F6F6F6; color: #000;} -.layui-nav-child dd.layui-this:after{display: none;} -.layui-nav-child-r{left: auto; right: 0;} -.layui-nav-child-c{text-align: center;} - -/* 垂直导航菜单 */.layui-nav-tree{width: 200px; padding: 0;} -.layui-nav-tree .layui-nav-item{display: block; width: 100%; line-height: 40px;} -.layui-nav-tree .layui-nav-item a{position: relative; height: 40px; line-height: 40px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;} -.layui-nav-tree .layui-nav-item>a{padding-top: 5px; padding-bottom: 5px;} -.layui-nav-tree .layui-nav-more{right: 15px;} -.layui-nav-tree .layui-nav-item>a .layui-nav-more{padding: 5px 0;} -.layui-nav-tree .layui-nav-bar{width: 5px; height: 0;} -.layui-side .layui-nav-tree .layui-nav-bar{width: 2px;} -.layui-nav-tree .layui-this, -.layui-nav-tree .layui-this>a, -.layui-nav-tree .layui-this>a:hover, -.layui-nav-tree .layui-nav-child dd.layui-this, -.layui-nav-tree .layui-nav-child dd.layui-this a{background-color: #009688; color: #fff;} -.layui-nav-tree .layui-this:after{display: none;} -.layui-nav-tree .layui-nav-title a, -.layui-nav-tree .layui-nav-title a:hover, -.layui-nav-itemed>a{color: #fff !important;} -.layui-nav-tree .layui-nav-bar{background-color: #009688;} - -.layui-nav-tree .layui-nav-child{position: relative; z-index: 0; top: 0; border: none; box-shadow: none;} -.layui-nav-tree .layui-nav-child dd{margin: 0;} -.layui-nav-tree .layui-nav-child a{color: #fff; color: rgba(255,255,255,.7);} -.layui-nav-tree .layui-nav-child a:hover, -.layui-nav-tree .layui-nav-child{background: none; color: #fff;} - -.layui-nav-itemed>.layui-nav-child{display: block; background-color: rgba(0,0,0,.3) !important;} -.layui-nav-itemed>.layui-nav-child>.layui-this>.layui-nav-child{display: block;} - -/* 侧边 */.layui-nav-side{position: fixed; top: 0; bottom: 0; left: 0; overflow-x: hidden; z-index: 999;} - - -/** 面包屑 **/ -.layui-breadcrumb{visibility: hidden; font-size: 0;} -.layui-breadcrumb>*{font-size: 14px;} -.layui-breadcrumb a{color: #999 !important;} -.layui-breadcrumb a:hover{color: #5FB878 !important;} -.layui-breadcrumb a cite{color: #666; font-style: normal;} -.layui-breadcrumb span[lay-separator]{margin: 0 10px; color: #999;} - -/** Tab 选项卡 **/ -.layui-tab{margin: 10px 0; text-align: left !important;} -.layui-tab[overflow]>.layui-tab-title{overflow: hidden;} -.layui-tab-title{position: relative; left: 0; height: 40px; white-space: nowrap; font-size: 0; border-bottom-width: 1px; border-bottom-style: solid; transition: all .2s; -webkit-transition: all .2s;} -.layui-tab-title li{display: inline-block; *display: inline; *zoom: 1; vertical-align: middle; font-size: 14px; transition: all .2s; -webkit-transition: all .2s;} -.layui-tab-title li{position: relative; line-height: 40px; min-width: 65px; padding: 0 15px; text-align: center; cursor: pointer;} -.layui-tab-title li a{display: block; padding: 0 15px; margin: 0 -15px;} -.layui-tab-title .layui-this{color: #000;} - -.layui-tab-title .layui-this:after{position: absolute; left:0; top: 0; content: ""; width:100%; height: 41px; border-width: 1px; border-style: solid; border-bottom-color: #fff; border-radius: 2px 2px 0 0; box-sizing: border-box; pointer-events: none;} -.layui-tab-bar{position: absolute; right: 0; top: 0; z-index: 10; width: 30px; height: 39px; line-height: 39px; border-width: 1px; border-style: solid; border-radius: 2px; text-align: center; background-color: #fff; cursor: pointer;} -.layui-tab-bar .layui-icon{position: relative; display: inline-block; top: 3px; transition: all .3s; -webkit-transition: all .3s;} -.layui-tab-item{display: none;} -.layui-tab-more{padding-right: 30px; height: auto !important; white-space: normal !important;} -.layui-tab-more li.layui-this:after{border-bottom-color: #eee; border-radius: 2px;} -.layui-tab-more .layui-tab-bar .layui-icon{top: -2px; top: 3px\0; -webkit-transform: rotate(180deg); transform: rotate(180deg);} -:root .layui-tab-more .layui-tab-bar .layui-icon{top: -2px\0/IE9;} - -.layui-tab-content{padding: 15px 0;} - -/* Tab 关闭 */.layui-tab-title li .layui-tab-close{position: relative; display: inline-block; width: 18px; height: 18px; line-height: 20px; margin-left: 8px; top: 1px; text-align: center; font-size: 14px; color: #c2c2c2; transition: all .2s; -webkit-transition: all .2s;} -.layui-tab-title li .layui-tab-close:hover{border-radius: 2px; background-color: #FF5722; color: #fff;} - -/* Tab 简洁风格 */.layui-tab-brief > .layui-tab-title .layui-this{color: #009688;} -.layui-tab-brief > .layui-tab-title .layui-this:after -,.layui-tab-brief > .layui-tab-more li.layui-this:after{border: none; border-radius: 0; border-bottom: 2px solid #5FB878;} -.layui-tab-brief[overflow] > .layui-tab-title .layui-this:after{top: -1px;} - -/* Tab 卡片风格 */.layui-tab-card{border-width: 1px; border-style: solid; border-radius: 2px; box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);} -.layui-tab-card > .layui-tab-title{background-color: #FAFAFA;} -.layui-tab-card > .layui-tab-title li{margin-right: -1px; margin-left: -1px;} -.layui-tab-card > .layui-tab-title .layui-this{background-color: #fff; } -.layui-tab-card > .layui-tab-title .layui-this:after{border-top: none; border-width: 1px; border-bottom-color: #fff;} -.layui-tab-card > .layui-tab-title .layui-tab-bar{height: 40px; line-height: 40px; border-radius: 0; border-top: none; border-right: none;} -.layui-tab-card > .layui-tab-more .layui-this{background: none; color: #5FB878;} -.layui-tab-card > .layui-tab-more .layui-this:after{border: none;} - -/* 时间线 */ -.layui-timeline{padding-left: 5px;} -.layui-timeline-item{position: relative; padding-bottom: 20px;} -.layui-timeline-axis{position: absolute; left: -5px; top: 0; z-index: 10; width: 20px; height: 20px; line-height: 20px; background-color: #fff; color: #5FB878; border-radius: 50%; text-align: center; cursor: pointer;} -.layui-timeline-axis:hover{color: #FF5722;} -.layui-timeline-item:before{content: ""; position: absolute; left: 5px; top: 0; z-index: 0; width: 1px; height: 100%;} - -.layui-timeline-item:first-child:before{display: block;} -.layui-timeline-item:last-child:before{display: none;} -.layui-timeline-content{padding-left: 25px;;} -.layui-timeline-title{position: relative; margin-bottom: 10px; line-height: 22px;} - -/* 小徽章 */ -.layui-badge, -.layui-badge-dot, -.layui-badge-rim{position:relative; display: inline-block; padding: 0 6px; font-size: 12px; text-align: center; background-color: #FF5722; color: #fff; border-radius: 2px;} -.layui-badge{height: 18px; line-height: 18px;} -.layui-badge-dot{width: 8px; height: 8px; padding: 0; border-radius: 50%;} -.layui-badge-rim{height: 18px; line-height: 18px; border-width: 1px; border-style: solid; background-color: #fff; color: #666;} - -.layui-btn .layui-badge, -.layui-btn .layui-badge-dot{margin-left: 5px;} -.layui-nav .layui-badge, -.layui-nav .layui-badge-dot{position: absolute; top: 50%; margin: -5px 6px 0;} -.layui-nav .layui-badge{margin-top: -10px;} -.layui-tab-title .layui-badge, -.layui-tab-title .layui-badge-dot{left: 5px; top: -2px;} - -/* carousel 轮播 */ -.layui-carousel{position: relative; left: 0; top: 0; background-color: #f8f8f8;} -.layui-carousel>*[carousel-item]{position: relative; width: 100%; height: 100%; overflow: hidden;} -.layui-carousel>*[carousel-item]:before{position: absolute; content: '\e63d'; left: 50%; top: 50%; width: 100px; line-height: 20px; margin: -10px 0 0 -50px; text-align: center; color: #c2c2c2; font-family:"layui-icon" !important; font-size: 30px; font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;} -.layui-carousel>*[carousel-item] > *{display: none; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: #f8f8f8; transition-duration: .3s; -webkit-transition-duration: .3s;} -.layui-carousel-updown > *{-webkit-transition: .3s ease-in-out up; transition: .3s ease-in-out up;} -.layui-carousel-arrow{display: none\0; opacity: 0; position: absolute; left: 10px; top: 50%; margin-top: -18px; width: 36px; height: 36px; line-height: 36px; text-align: center; font-size: 20px; border: none 0; border-radius: 50%; background-color: rgba(0,0,0,.2); color: #fff; -webkit-transition-duration: .3s; transition-duration: .3s; cursor: pointer;} -.layui-carousel-arrow[lay-type="add"]{left: auto!important; right: 10px;} -.layui-carousel[lay-arrow="always"] .layui-carousel-arrow{opacity: 1; left: 20px;} -.layui-carousel[lay-arrow="always"] .layui-carousel-arrow[lay-type="add"]{right: 20px;} -.layui-carousel[lay-arrow="none"] .layui-carousel-arrow{display: none;} -.layui-carousel-arrow:hover, -.layui-carousel-ind ul:hover{background-color: rgba(0,0,0,.35);} -.layui-carousel:hover .layui-carousel-arrow{display: block\0; opacity: 1; left: 20px;} -.layui-carousel:hover .layui-carousel-arrow[lay-type="add"]{right: 20px;} -.layui-carousel-ind{position: relative; top: -35px; width: 100%; line-height: 0!important; text-align: center; font-size: 0;} -.layui-carousel[lay-indicator="outside"]{margin-bottom: 30px;} -.layui-carousel[lay-indicator="outside"] .layui-carousel-ind{top: 10px;} -.layui-carousel[lay-indicator="outside"] .layui-carousel-ind ul{background-color: rgba(0,0,0,.5);} -.layui-carousel[lay-indicator="none"] .layui-carousel-ind{display: none;} -.layui-carousel-ind ul{display: inline-block; padding: 5px; background-color: rgba(0,0,0,.2); border-radius: 10px; -webkit-transition-duration: .3s; transition-duration: .3s;} -.layui-carousel-ind li{display: inline-block; width: 10px; height: 10px; margin: 0 3px; font-size: 14px; background-color: #eee; background-color: rgba(255,255,255,.5); border-radius: 50%; cursor: pointer; -webkit-transition-duration: .3s; transition-duration: .3s;} -.layui-carousel-ind li:hover{background-color: rgba(255,255,255,.7);} -.layui-carousel-ind li.layui-this{background-color: #fff;} -.layui-carousel>*[carousel-item]>.layui-this, -.layui-carousel>*[carousel-item]>.layui-carousel-prev, -.layui-carousel>*[carousel-item]>.layui-carousel-next{display: block} -.layui-carousel>*[carousel-item]>.layui-this{left: 0;} -.layui-carousel>*[carousel-item]>.layui-carousel-prev{left: -100%;} -.layui-carousel>*[carousel-item]>.layui-carousel-next{left: 100%;} -.layui-carousel>*[carousel-item]>.layui-carousel-prev.layui-carousel-right, -.layui-carousel>*[carousel-item]>.layui-carousel-next.layui-carousel-left{left: 0;} -.layui-carousel>*[carousel-item]>.layui-this.layui-carousel-left{left: -100%;} -.layui-carousel>*[carousel-item]>.layui-this.layui-carousel-right{left: 100%;} - -/* 上下切换 */.layui-carousel[lay-anim="updown"] .layui-carousel-arrow{left: 50%!important; top: 20px; margin: 0 0 0 -18px;} -.layui-carousel[lay-anim="updown"] .layui-carousel-arrow[lay-type="add"]{top: auto!important; bottom: 20px;} -.layui-carousel[lay-anim="updown"] .layui-carousel-ind{position: absolute; top: 50%; right: 20px; width: auto; height: auto;} -.layui-carousel[lay-anim="updown"] .layui-carousel-ind ul{padding: 3px 5px;} -.layui-carousel[lay-anim="updown"] .layui-carousel-ind li{display: block; margin: 6px 0;} - -.layui-carousel[lay-anim="updown"]>*[carousel-item]>*{left: 0!important;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-this{top: 0;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-carousel-prev{top: -100%;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-carousel-next{top: 100%;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-carousel-prev.layui-carousel-right, -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-carousel-next.layui-carousel-left{top: 0;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-this.layui-carousel-left{top: -100%;} -.layui-carousel[lay-anim="updown"]>*[carousel-item]>.layui-this.layui-carousel-right{top: 100%;} - -/* 渐显切换 */.layui-carousel[lay-anim="fade"]>*[carousel-item]>*{left: 0!important;} -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-carousel-prev, -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-carousel-next{opacity: 0;} -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-carousel-prev.layui-carousel-right, -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-carousel-next.layui-carousel-left{opacity: 1;} -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-this.layui-carousel-left, -.layui-carousel[lay-anim="fade"]>*[carousel-item]>.layui-this.layui-carousel-right{opacity: 0} - -/** fixbar **/ -.layui-fixbar{position: fixed; right: 15px; bottom: 15px; z-index: 999999;} -.layui-fixbar li{width: 50px; height: 50px; line-height: 50px; margin-bottom: 1px; text-align:center; cursor: pointer; font-size:30px; background-color: #9F9F9F; color:#fff; border-radius: 2px; opacity: 0.95;} -.layui-fixbar li:hover{opacity: 0.85;} -.layui-fixbar li:active{opacity: 1;} -.layui-fixbar .layui-fixbar-top{display: none; font-size: 40px;} - -/** 表情面板 **/ -body .layui-util-face{border: none; background: none;} -body .layui-util-face .layui-layer-content{padding:0; background-color:#fff; color:#666; box-shadow:none} -.layui-util-face .layui-layer-TipsG{display:none;} -.layui-util-face ul{position:relative; width:372px; padding:10px; border:1px solid #D9D9D9; background-color:#fff; box-shadow: 0 0 20px rgba(0,0,0,.2);} -.layui-util-face ul li{cursor: pointer; float: left; border: 1px solid #e8e8e8; height: 22px; width: 26px; overflow: hidden; margin: -1px 0 0 -1px; padding: 4px 2px; text-align: center;} -.layui-util-face ul li:hover{position: relative; z-index: 2; border: 1px solid #eb7350; background: #fff9ec;} - -/** 代码文本修饰 **/ -.layui-code{position: relative; margin: 10px 0; padding: 15px; line-height: 20px; border: 1px solid #eee; border-left-width: 6px; background-color: #FAFAFA; color: #333; font-family: Courier New; font-size: 12px;} - -/** 穿梭框 **/ -.layui-transfer-box, -.layui-transfer-header, -.layui-transfer-search{border-width: 0; border-style: solid; border-color: #eee} -.layui-transfer-box{position: relative; display: inline-block; vertical-align: middle; border-width: 1px; width: 200px; height: 360px; border-radius: 2px; background-color:#fff;} -.layui-transfer-box .layui-form-checkbox{width: 100%; margin: 0 !important;} -.layui-transfer-header{height: 38px; line-height: 38px; padding: 0 10px; border-bottom-width: 1px;} -.layui-transfer-search{position:relative; padding: 10px; border-bottom-width: 1px;} -.layui-transfer-search .layui-input{height: 32px; padding-left: 30px; font-size: 12px;} -.layui-transfer-search .layui-icon-search{position: absolute; left: 20px; top: 50%; margin-top: -8px; color: #666;} -.layui-transfer-active{margin: 0 15px; display: inline-block; vertical-align: middle;} -.layui-transfer-active .layui-btn{display: block; margin: 0; padding: 0 15px; background-color: #5FB878; border-color: #5FB878; color: #fff;} -.layui-transfer-active .layui-btn-disabled{background-color: #FBFBFB; border-color: #eee; color: #d2d2d2;} -.layui-transfer-active .layui-btn:first-child{margin-bottom: 15px;} -.layui-transfer-active .layui-btn .layui-icon{margin: 0; font-size: 14px !important;} -.layui-transfer-data{padding: 5px 0; overflow: auto;} -.layui-transfer-data li{height: 32px; line-height: 32px; padding: 0 10px;} -.layui-transfer-data li:hover{background-color: #F6F6F6; transition: .5s all;} -.layui-transfer-data .layui-none{padding: 15px 10px; text-align: center; color: #999;} - -/** 评分组件 **/ -.layui-rate, -.layui-rate *{display: inline-block; vertical-align: middle;} -.layui-rate{padding: 10px 5px 10px 0; font-size: 0;} -.layui-rate li i.layui-icon{ font-size: 20px; color: #FFB800;} -.layui-rate li i.layui-icon{margin-right: 5px; transition: all .3s; -webkit-transition: all .3s;} -.layui-rate li i:hover{cursor: pointer; transform: scale(1.12); -webkit-transform: scale(1.12);} -.layui-rate[readonly] li i:hover{cursor: default; transform: scale(1);} - -/** 颜色选择器 **/ -.layui-colorpicker{width: 26px; height: 26px; border: 1px solid #eee; padding: 5px; border-radius: 2px; line-height: 24px; display: inline-block; cursor: pointer; transition: all .3s; -webkit-transition: all .3s;} -.layui-colorpicker:hover{border-color: #d2d2d2;} -.layui-colorpicker.layui-colorpicker-lg{width: 34px; height: 34px; line-height: 32px;} -.layui-colorpicker.layui-colorpicker-sm{width: 24px; height: 24px; line-height: 22px;} -.layui-colorpicker.layui-colorpicker-xs{width: 22px; height: 22px; line-height: 20px;} - -.layui-colorpicker-trigger-bgcolor{display: block; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==); border-radius: 2px;} -.layui-colorpicker-trigger-span{display: block; height: 100%; box-sizing: border-box; border: 1px solid rgba(0,0,0,.15); border-radius: 2px; text-align: center;} -.layui-colorpicker-trigger-i{display: inline-block; color: #FFF; font-size: 12px;} -.layui-colorpicker-trigger-i.layui-icon-close{color: #999;} - -.layui-colorpicker-main{position: absolute; left: -999999px; top: -999999px; z-index: 66666666; width: 280px; margin: 5px 0; padding: 7px; background: #FFF; border: 1px solid #d2d2d2; border-radius: 2px; box-shadow: 0 2px 4px rgba(0,0,0,.12);} -.layui-colorpicker-main-wrapper{height: 180px; position: relative;} -.layui-colorpicker-basis{width: 260px; height: 100%; position: relative;} -.layui-colorpicker-basis-white{width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(90deg, #FFF, hsla(0,0%,100%,0));} -.layui-colorpicker-basis-black{width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(0deg, #000, transparent);} -.layui-colorpicker-basis-cursor{width: 10px; height: 10px; border: 1px solid #FFF; border-radius: 50%; position: absolute; top: -3px; right: -3px; cursor: pointer;} -.layui-colorpicker-side{position: absolute; top: 0; right: 0; width: 12px; height: 100%; background: linear-gradient(#F00, #FF0, #0F0, #0FF, #00F, #F0F, #F00);} -.layui-colorpicker-side-slider{width: 100%; height: 5px; box-shadow: 0 0 1px #888888; box-sizing: border-box; background: #FFF; border-radius: 1px; border: 1px solid #f0f0f0; cursor: pointer; position: absolute; left: 0;} -.layui-colorpicker-main-alpha{display: none; height: 12px; margin-top: 7px; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)} -.layui-colorpicker-alpha-bgcolor{height: 100%; position: relative;} -.layui-colorpicker-alpha-slider{width: 5px; height: 100%; box-shadow: 0 0 1px #888888; box-sizing: border-box; background: #FFF; border-radius: 1px; border: 1px solid #f0f0f0; cursor: pointer; position: absolute; top: 0;} -.layui-colorpicker-main-pre{padding-top: 7px; font-size: 0;} -.layui-colorpicker-pre{width: 20px; height: 20px; border-radius: 2px; display: inline-block; margin-left: 6px; margin-bottom: 7px; cursor: pointer;} -.layui-colorpicker-pre:nth-child(11n+1){margin-left: 0;} -.layui-colorpicker-pre-isalpha{background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)} -.layui-colorpicker-pre.layui-this{box-shadow: 0 0 3px 2px rgba(0,0,0,.15);} -.layui-colorpicker-pre > div{height: 100%; border-radius: 2px;} -.layui-colorpicker-main-input{text-align: right; padding-top: 7px;} -.layui-colorpicker-main-input .layui-btn-container .layui-btn{margin: 0 0 0 10px;} -.layui-colorpicker-main-input div.layui-inline{float: left; margin-right: 10px; font-size: 14px;} -.layui-colorpicker-main-input input.layui-input{width: 150px; height: 30px; color: #666;} - -/** 滑块 **/ -.layui-slider{height: 4px; background: #eee; border-radius: 3px; position: relative; cursor: pointer;} -.layui-slider-bar{border-radius: 3px; position: absolute; height: 100%;} -.layui-slider-step{position: absolute; top: 0; width: 4px; height: 4px; border-radius: 50%; background: #FFF; -webkit-transform: translateX(-50%); transform: translateX(-50%);} -.layui-slider-wrap{width: 36px; height: 36px; position: absolute; top: -16px; -webkit-transform: translateX(-50%); transform: translateX(-50%); z-index: 10; text-align: center;} -.layui-slider-wrap-btn{width: 12px; height: 12px; border-radius: 50%; background: #FFF; display: inline-block; vertical-align: middle; cursor: pointer; transition: 0.3s;} -.layui-slider-wrap:after{content: ""; height: 100%; display: inline-block; vertical-align: middle;} -.layui-slider-wrap-btn:hover, -.layui-slider-wrap-btn.layui-slider-hover{transform: scale(1.2);} -.layui-slider-wrap-btn.layui-disabled:hover{transform: scale(1) !important;} -.layui-slider-tips{position: absolute; top: -42px; z-index: 66666666; white-space:nowrap; display: none; -webkit-transform: translateX(-50%); transform: translateX(-50%); color: #FFF; background: #000; border-radius: 3px; height: 25px; line-height: 25px; padding: 0 10px;} -.layui-slider-tips:after{content: ""; position: absolute; bottom: -12px; left: 50%; margin-left: -6px; width: 0; height: 0; border-width: 6px; border-style: solid; border-color: #000 transparent transparent transparent;} -.layui-slider-input{width: 70px; height: 32px; border: 1px solid #eee; border-radius: 3px; font-size: 16px; line-height: 32px; position: absolute; right: 0; top: -14px;} -.layui-slider-input-btn{position: absolute; top: 0; right: 0; width: 20px; height: 100%; border-left: 1px solid #eee;} -.layui-slider-input-btn i{cursor: pointer; position: absolute; right: 0; bottom: 0; width: 20px; height: 50%; font-size: 12px; line-height: 16px; text-align: center; color: #999;} -.layui-slider-input-btn i:first-child{top: 0; border-bottom: 1px solid #eee;} -.layui-slider-input-txt{height: 100%; font-size: 14px;} -.layui-slider-input-txt input{height: 100%; border: none;} -.layui-slider-input-btn i:hover{color: #009688;} -/*垂直滑块*/ -.layui-slider-vertical{width: 4px; margin-left: 33px;} -.layui-slider-vertical .layui-slider-bar{width: 4px;} -.layui-slider-vertical .layui-slider-step{top: auto; left: 0px; -webkit-transform: translateY(50%); transform: translateY(50%);} -.layui-slider-vertical .layui-slider-wrap{top: auto; left: -16px; -webkit-transform: translateY(50%); transform: translateY(50%);} -.layui-slider-vertical .layui-slider-tips{top: auto; left: 2px;} -@media \0screen{ - .layui-slider-wrap-btn{margin-left: -20px;} - .layui-slider-vertical .layui-slider-wrap-btn{margin-left: 0; margin-bottom: -20px;} - .layui-slider-vertical .layui-slider-tips{margin-left: -8px;} - .layui-slider > span{margin-left: 8px;} -} - -/** 树组件 **/ -.layui-tree{line-height: 22px;} -.layui-tree .layui-form-checkbox{margin: 0 !important;} -.layui-tree-set{width: 100%; position: relative;} -.layui-tree-pack{display: none; padding-left: 20px; position: relative;} -.layui-tree-line .layui-tree-pack{padding-left: 27px;} -.layui-tree-line .layui-tree-set .layui-tree-set:after{content: ""; position: absolute; top: 14px; left: -9px; width: 17px; height: 0; border-top: 1px dotted #c0c4cc;} -.layui-tree-entry{position: relative; padding: 3px 0; height: 20px; white-space: nowrap;} -.layui-tree-entry:hover{background-color: #eee;} -.layui-tree-line .layui-tree-entry:hover{background-color: rgba(0,0,0,0);} -.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color: #999; text-decoration: underline; transition: 0.3s;} -.layui-tree-main{display: inline-block; vertical-align: middle; cursor: pointer; padding-right: 10px;} -.layui-tree-line .layui-tree-set:before{content: ""; position: absolute; top: 0; left: -9px; width: 0; height: 100%; border-left: 1px dotted #c0c4cc;} -.layui-tree-line .layui-tree-set.layui-tree-setLineShort:before{height: 13px;} -.layui-tree-line .layui-tree-set.layui-tree-setHide:before{height: 0;} -.layui-tree-iconClick{display: inline-block; vertical-align: middle; position: relative; height: 20px; line-height: 20px; margin: 0 10px; color: #c0c4cc;} -.layui-tree-icon{height: 12px; line-height: 12px; width: 12px; text-align: center; border: 1px solid #c0c4cc;} -.layui-tree-iconClick .layui-icon{font-size: 18px;} -.layui-tree-icon .layui-icon{font-size: 12px; color: #666;} -.layui-tree-iconArrow{padding: 0 5px;} -.layui-tree-iconArrow:after{content: ""; position: absolute; left: 4px; top: 3px; z-index: 100; width: 0; height: 0; border-width: 5px; border-style: solid; border-color: transparent transparent transparent #c0c4cc; transition: 0.5s;} -.layui-tree-spread>.layui-tree-entry .layui-tree-iconClick>.layui-tree-iconArrow:after{transform: rotate(90deg) translate(3px, 4px);} -.layui-tree-txt{display: inline-block; vertical-align: middle; color: #555;} -.layui-tree-search{margin-bottom: 15px; color: #666;} -.layui-tree-btnGroup{visibility: hidden; display: inline-block; vertical-align: middle; position: relative;} -.layui-tree-btnGroup .layui-icon{display: inline-block; vertical-align: middle; padding: 0 2px; cursor: pointer;} -.layui-tree-btnGroup .layui-icon:hover{color: #999; transition: 0.3s;} -.layui-tree-entry:hover .layui-tree-btnGroup{visibility: visible;} -.layui-tree-editInput{position: relative; display: inline-block; vertical-align: middle; height: 20px; line-height: 20px; padding: 0 3px; border: none; background-color: rgba(0,0,0,0.05);} -.layui-tree-emptyText{text-align: center; color: #999;} - - - - -/** 动画 **/ -.layui-anim{-webkit-animation-duration: 0.3s; -webkit-animation-fill-mode: both; animation-duration: 0.3s; animation-fill-mode: both;} -.layui-anim.layui-icon{display: inline-block;} -.layui-anim-loop{-webkit-animation-iteration-count: infinite; animation-iteration-count: infinite;} -.layui-trans, -.layui-trans a{transition: all .2s; -webkit-transition: all .2s;} /* 过度变换 */ - -/* 循环旋转 */ -@-webkit-keyframes layui-rotate{ - from {-webkit-transform: rotate(0deg);} - to {-webkit-transform: rotate(360deg);} -} -@keyframes layui-rotate{ - from {transform: rotate(0deg);} - to {transform: rotate(360deg);} -} -.layui-anim-rotate{-webkit-animation-name: layui-rotate; animation-name: layui-rotate; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-timing-function: linear; animation-timing-function: linear;} - -/* 从最底部往上滑入 */ -@-webkit-keyframes layui-up{ - from {-webkit-transform: translate3d(0, 100%, 0); opacity: 0.3;} - to {-webkit-transform: translate3d(0, 0, 0); opacity: 1;} -} -@keyframes layui-up{ - from {transform: translate3d(0, 100%, 0); opacity: 0.3;} - to {transform: translate3d(0, 0, 0); opacity: 1;} -} -.layui-anim-up{-webkit-animation-name: layui-up; animation-name: layui-up;} - -/* 微微往上滑入 */ -@-webkit-keyframes layui-upbit{ - from {-webkit-transform: translate3d(0, 15px, 0); opacity: 0.3;} - to {-webkit-transform: translate3d(0, 0, 0); opacity: 1;} -} -@keyframes layui-upbit{ - from {transform: translate3d(0, 15px, 0); opacity: 0.3;} - to {transform: translate3d(0, 0, 0); opacity: 1;} -} -.layui-anim-upbit{-webkit-animation-name: layui-upbit; animation-name: layui-upbit;} - -/* 从最顶部往下滑入 */ -@keyframes layui-down { - 0% {opacity: 0.3; transform: translate3d(0, -100%, 0);} - 100% {opacity: 1; transform: translate3d(0, 0, 0);} -} -.layui-anim-down{animation-name: layui-down;} - -/* 微微往下滑入 */ -@keyframes layui-downbit { - 0% {opacity: 0.3; transform: translate3d(0, -5px, 0);} - 100% {opacity: 1; transform: translate3d(0, 0, 0);} -} -.layui-anim-downbit{animation-name: layui-downbit;} - -/* 放大 */ -@-webkit-keyframes layui-scale { - 0% {opacity: 0.3; -webkit-transform: scale(.5);} - 100% {opacity: 1; -webkit-transform: scale(1);} -} -@keyframes layui-scale { - 0% {opacity: 0.3; -ms-transform: scale(.5); transform: scale(.5);} - 100% {opacity: 1; -ms-transform: scale(1); transform: scale(1);} -} -.layui-anim-scale{-webkit-animation-name: layui-scale; animation-name: layui-scale} - -/* 弹簧式放大 */ -@-webkit-keyframes layui-scale-spring { - 0% {opacity: 0.5; -webkit-transform: scale(.5);} - 80% {opacity: 0.8; -webkit-transform: scale(1.1);} - 100% {opacity: 1; -webkit-transform: scale(1);} -} -@keyframes layui-scale-spring { - 0% {opacity: 0.5; transform: scale(.5);} - 80% {opacity: 0.8; transform: scale(1.1);} - 100% {opacity: 1; transform: scale(1);} -} -.layui-anim-scaleSpring{-webkit-animation-name: layui-scale-spring; animation-name: layui-scale-spring} - -/* 放小 */ -@keyframes layui-scalesmall { - 0% {opacity: 0.3; transform: scale(1.5);} - 100% {opacity: 1; transform: scale(1);} -} -.layui-anim-scalesmall{animation-name: layui-scalesmall} - -/* 弹簧式放小 */ -@keyframes layui-scalesmall-spring { - 0% {opacity: 0.3; transform: scale(1.5);} - 80% {opacity: 0.8; transform: scale(0.9);} - 100% {opacity: 1; transform: scale(1);} -} -.layui-anim-scalesmall-spring{animation-name: layui-scalesmall-spring} - - -/* 渐显 */ -@-webkit-keyframes layui-fadein { - 0% {opacity: 0;} - 100% {opacity: 1;} -} -@keyframes layui-fadein { - 0% {opacity: 0;} - 100% {opacity: 1;} -} -.layui-anim-fadein{-webkit-animation-name: layui-fadein; animation-name: layui-fadein;} - -/* 渐隐 */ -@-webkit-keyframes layui-fadeout { - 0% {opacity: 1;} - 100% {opacity: 0;} -} -@keyframes layui-fadeout { - 0% {opacity: 1;} - 100% {opacity: 0;} -} -.layui-anim-fadeout{-webkit-animation-name: layui-fadeout; animation-name: layui-fadeout} - - - - diff --git a/static/Layui/v2.6.8/css/modules/code.css b/static/Layui/v2.6.8/css/modules/code.css deleted file mode 100644 index efb79d2..0000000 --- a/static/Layui/v2.6.8/css/modules/code.css +++ /dev/null @@ -1,29 +0,0 @@ -/** - - @Name: layui.code - @Description:Classic modular front-end UI framework - @License:MIT - - */ - -/* 加载就绪标志 */ -html #layuicss-skincodecss{display:none; position: absolute; width:1989px;} - -/* 默认风格 */ -.layui-code-view{display: block; position: relative; margin: 10px 0; padding: 0; border: 1px solid #eee; border-left-width: 6px; background-color: #FAFAFA; color: #333; font-family: Courier New; font-size: 12px;} -.layui-code-h3{position: relative; padding: 0 10px; height: 40px; line-height: 40px; border-bottom: 1px solid #eee; font-size: 12px;} -.layui-code-h3 a{position: absolute; right: 10px; top: 0; color: #999;} -.layui-code-view .layui-code-ol{position: relative; overflow: auto;} -.layui-code-view .layui-code-ol li{position: relative; margin-left: 45px; line-height: 20px; padding: 0 10px; border-left: 1px solid #e2e2e2; list-style-type: decimal-leading-zero; *list-style-type: decimal; background-color: #fff;} -.layui-code-view .layui-code-ol li:first-child{padding-top: 10px;} -.layui-code-view .layui-code-ol li:last-child{padding-bottom: 10px;} -.layui-code-view pre{margin: 0;} - -/* notepadd++风格 */ -.layui-code-notepad{border: 1px solid #0C0C0C; border-left-color: #3F3F3F; background-color: #0C0C0C; color: #C2BE9E} -.layui-code-notepad .layui-code-h3{border-bottom: none;} -.layui-code-notepad .layui-code-ol li{background-color: #3F3F3F; border-left: none;} - -/* 代码预览 */ -.layui-code-demo .layui-code{visibility: visible !important; margin: -15px; border-top: none; border-right: none; border-bottom: none;} -.layui-code-demo .layui-tab-content{padding: 15px; border-top: none} \ No newline at end of file diff --git a/static/Layui/v2.6.8/css/modules/laydate/default/font.css b/static/Layui/v2.6.8/css/modules/laydate/default/font.css deleted file mode 100644 index f429656..0000000 --- a/static/Layui/v2.6.8/css/modules/laydate/default/font.css +++ /dev/null @@ -1,16 +0,0 @@ -/** 图标字体 **/ -@font-face {font-family: 'laydate-icon'; - src: url('./font/iconfont.eot'); - src: url('./font/iconfont.eot#iefix') format('embedded-opentype'), - url('./font/iconfont.svg#iconfont') format('svg'), - url('./font/iconfont.woff') format('woff'), - url('./font/iconfont.ttf') format('truetype'); -} - -.laydate-icon{ - font-family:"laydate-icon" !important; - font-size: 16px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} \ No newline at end of file diff --git a/static/Layui/v2.6.8/css/modules/laydate/default/laydate.css b/static/Layui/v2.6.8/css/modules/laydate/default/laydate.css deleted file mode 100644 index 2f54cf9..0000000 --- a/static/Layui/v2.6.8/css/modules/laydate/default/laydate.css +++ /dev/null @@ -1,152 +0,0 @@ -/** - - @Name: laydata - - **/ - - -html #layuicss-laydate{display: none; position: absolute; width: 1989px;} - -/* 初始化 */ -.layui-laydate *{margin: 0; padding: 0;} - -/* 主体结构 */ -.layui-laydate, .layui-laydate *{box-sizing: border-box;} -.layui-laydate{position: absolute; z-index: 66666666; margin: 5px 0; border-radius: 2px; font-size: 14px; -webkit-animation-duration: 0.2s; animation-duration: 0.2s; -webkit-animation-fill-mode: both; animation-fill-mode: both;} -.layui-laydate-main{width: 272px;} -.layui-laydate-header *, -.layui-laydate-content td, -.layui-laydate-list li{transition-duration: .3s; -webkit-transition-duration: .3s;} - -/* 微微往下滑入 */ -@keyframes laydate-downbit { - 0% {opacity: 0.3; transform: translate3d(0, -5px, 0);} - 100% {opacity: 1; transform: translate3d(0, 0, 0);} -} - -.layui-laydate{animation-name: laydate-downbit;} -.layui-laydate-static{ position: relative; z-index: 0; display: inline-block; margin: 0; -webkit-animation: none; animation: none;} - -/* 展开年月列表时 */ -.laydate-ym-show .laydate-prev-m, -.laydate-ym-show .laydate-next-m{display: none !important;} -.laydate-ym-show .laydate-prev-y, -.laydate-ym-show .laydate-next-y{display: inline-block !important;} -.laydate-ym-show .laydate-set-ym span[lay-type="month"]{display: none !important;} - -/* 展开时间列表时 */ -.laydate-time-show .layui-laydate-header .layui-icon, -.laydate-time-show .laydate-set-ym span[lay-type="year"], -.laydate-time-show .laydate-set-ym span[lay-type="month"]{display: none !important;} - -/* 头部结构 */ -.layui-laydate-header{position: relative; line-height:30px; padding: 10px 70px 5px;} -.layui-laydate-header *{display: inline-block; vertical-align: bottom;} -.layui-laydate-header i{position: absolute; top: 10px; padding: 0 5px; color: #999; font-size: 18px; cursor: pointer;} -.layui-laydate-header i.laydate-prev-y{left: 15px;} -.layui-laydate-header i.laydate-prev-m{left: 45px;} -.layui-laydate-header i.laydate-next-y{right: 15px;} -.layui-laydate-header i.laydate-next-m{right: 45px;} -.laydate-set-ym{width: 100%; text-align: center; box-sizing: border-box; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;} -.laydate-set-ym span{padding: 0 10px; cursor: pointer;} -.laydate-time-text{cursor: default !important;} - -/* 主体结构 */ -.layui-laydate-content{position: relative; padding: 10px; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;} -.layui-laydate-content table{border-collapse: collapse; border-spacing: 0;} -.layui-laydate-content th, -.layui-laydate-content td{width: 36px; height: 30px; padding: 5px; text-align: center;} -.layui-laydate-content th{font-weight: 400;} -.layui-laydate-content td{position: relative; cursor: pointer;} -.laydate-day-mark{position: absolute; left: 0; top: 0; width: 100%; line-height: 30px; font-size: 12px; overflow: hidden;} -.laydate-day-mark::after{position: absolute; content:''; right: 2px; top: 2px; width: 5px; height: 5px; border-radius: 50%;} - -/* 底部结构 */ -.layui-laydate-footer{position: relative; height: 46px; line-height: 26px; padding: 10px;} -.layui-laydate-footer span{display: inline-block; vertical-align: top; height: 26px; line-height: 24px; padding: 0 10px; border: 1px solid #C9C9C9; border-radius: 2px; background-color: #fff; font-size: 12px; cursor: pointer; white-space: nowrap; transition: all .3s;} -.layui-laydate-footer span:hover{color: #5FB878;} -.layui-laydate-footer span.layui-laydate-preview{cursor: default; border-color: transparent !important;} -.layui-laydate-footer span.layui-laydate-preview:hover{color: #666;} -.layui-laydate-footer span:first-child.layui-laydate-preview{padding-left: 0;} -.laydate-footer-btns{position: absolute; right: 10px; top: 10px;} -.laydate-footer-btns span{margin: 0 0 0 -1px;} - -/* 年月列表 */ -.layui-laydate-list{position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding: 10px; box-sizing: border-box; background-color: #fff;} -.layui-laydate-list>li{position: relative; display: inline-block; width: 33.3%; height: 36px; line-height: 36px; margin: 3px 0; vertical-align: middle; text-align: center; cursor: pointer;} -.laydate-month-list>li{width: 25%; margin: 17px 0;} -.laydate-time-list{} -.laydate-time-list>li{height: 100%; margin: 0; line-height: normal; cursor: default;} -.laydate-time-list p{position: relative; top: -4px; line-height: 29px;} -.laydate-time-list ol{height: 181px; overflow: hidden;} -.laydate-time-list>li:hover ol{overflow-y: auto;} -.laydate-time-list ol li{width: 130%; padding-left: 33px; height: 30px; line-height: 30px; text-align: left; cursor: pointer;} - -/* 提示 */ -.layui-laydate-hint{position: absolute; top: 115px; left: 50%; width: 250px; margin-left: -125px; line-height: 20px; padding: 15px; text-align: center; font-size: 12px; color: #FF5722;} - - -/* 双日历 */ -.layui-laydate-range{width: 546px;} -.layui-laydate-range .layui-laydate-main{display: inline-block; vertical-align: middle;} -.layui-laydate-range .laydate-main-list-1 .layui-laydate-header, -.layui-laydate-range .laydate-main-list-1 .layui-laydate-content{border-left: 1px solid #e2e2e2;} - - -/* 默认简约主题 */ -.layui-laydate, .layui-laydate-hint{border: 1px solid #d2d2d2; box-shadow: 0 2px 4px rgba(0,0,0,.12); background-color: #fff; color: #666;} -.layui-laydate-header{border-bottom: 1px solid #e2e2e2;} -.layui-laydate-header i:hover, -.layui-laydate-header span:hover{color: #5FB878;} -.layui-laydate-content{border-top: none 0; border-bottom: none 0;} -.layui-laydate-content th{color: #333;} -.layui-laydate-content td{color: #666;} -.layui-laydate-content td.laydate-selected{background-color: #B5FFF8;} -.laydate-selected:hover{background-color: #00F7DE !important;} -.layui-laydate-content td:hover, -.layui-laydate-list li:hover{background-color: #eee; color: #333;} -.laydate-time-list li ol{margin: 0; padding: 0; border: 1px solid #e2e2e2; border-left-width: 0;} -.laydate-time-list li:first-child ol{border-left-width: 1px;} -.laydate-time-list>li:hover{background: none;} -.layui-laydate-content .laydate-day-prev, -.layui-laydate-content .laydate-day-next{color: #d2d2d2;} -.laydate-selected.laydate-day-prev, -.laydate-selected.laydate-day-next{background-color: #f8f8f8 !important;} -.layui-laydate-footer{border-top: 1px solid #e2e2e2;} -.layui-laydate-hint{color: #FF5722;} -.laydate-day-mark::after{background-color: #5FB878;} -.layui-laydate-content td.layui-this .laydate-day-mark::after{display: none;} -.layui-laydate-footer span[lay-type="date"]{color: #5FB878;} -.layui-laydate .layui-this{background-color: #009688 !important; color: #fff !important;} -.layui-laydate .laydate-disabled, -.layui-laydate .laydate-disabled:hover{background:none !important; color: #d2d2d2 !important; cursor: not-allowed !important; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;} - -/* 墨绿/自定义背景色主题 */ -.laydate-theme-molv{border: none;} -.laydate-theme-molv.layui-laydate-range{width: 548px} -.laydate-theme-molv .layui-laydate-main{width: 274px;} -.laydate-theme-molv .layui-laydate-header{border: none; background-color: #009688;} -.laydate-theme-molv .layui-laydate-header i, -.laydate-theme-molv .layui-laydate-header span{color: #f6f6f6;} -.laydate-theme-molv .layui-laydate-header i:hover, -.laydate-theme-molv .layui-laydate-header span:hover{color: #fff;} -.laydate-theme-molv .layui-laydate-content{border: 1px solid #e2e2e2; border-top: none; border-bottom: none;} -.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left: none;} -.laydate-theme-molv .layui-laydate-footer{border: 1px solid #e2e2e2;} - -/* 格子主题 */ -.laydate-theme-grid .layui-laydate-content td, -.laydate-theme-grid .layui-laydate-content thead, -.laydate-theme-grid .laydate-year-list>li, -.laydate-theme-grid .laydate-month-list>li{border: 1px solid #e2e2e2;} -.laydate-theme-grid .laydate-selected, -.laydate-theme-grid .laydate-selected:hover{background-color: #f2f2f2 !important; color: #009688 !important;} -.laydate-theme-grid .laydate-selected.laydate-day-prev, -.laydate-theme-grid .laydate-selected.laydate-day-next{color: #d2d2d2 !important;} -.laydate-theme-grid .laydate-year-list, -.laydate-theme-grid .laydate-month-list{margin: 1px 0 0 1px;} -.laydate-theme-grid .laydate-year-list>li, -.laydate-theme-grid .laydate-month-list>li{margin: 0 -1px -1px 0;} -.laydate-theme-grid .laydate-year-list>li{height: 43px; line-height: 43px;} -.laydate-theme-grid .laydate-month-list>li{height: 71px; line-height: 71px;} - diff --git a/static/Layui/v2.6.8/css/modules/layer/default/icon-ext.png b/static/Layui/v2.6.8/css/modules/layer/default/icon-ext.png deleted file mode 100644 index bbbb669..0000000 Binary files a/static/Layui/v2.6.8/css/modules/layer/default/icon-ext.png and /dev/null differ diff --git a/static/Layui/v2.6.8/css/modules/layer/default/icon.png b/static/Layui/v2.6.8/css/modules/layer/default/icon.png deleted file mode 100644 index 3e17da8..0000000 Binary files a/static/Layui/v2.6.8/css/modules/layer/default/icon.png and /dev/null differ diff --git a/static/Layui/v2.6.8/css/modules/layer/default/layer.css b/static/Layui/v2.6.8/css/modules/layer/default/layer.css deleted file mode 100644 index 54a6aee..0000000 --- a/static/Layui/v2.6.8/css/modules/layer/default/layer.css +++ /dev/null @@ -1,179 +0,0 @@ -/** - - @Name: layer - - **/ - -/* *html{background-image: url(about:blank); background-attachment: fixed;} */ -html #layuicss-layer{display: none; position: absolute; width: 1989px;} - -/* common */ -.layui-layer-shade, .layui-layer{position:fixed; _position:absolute; pointer-events: auto;} -.layui-layer-shade{top:0; left:0; width:100%; height:100%; _height:expression(document.body.offsetHeight+"px");} -.layui-layer{-webkit-overflow-scrolling: touch;} -.layui-layer{top:150px; left: 0; margin:0; padding:0; background-color:#fff; -webkit-background-clip: content; border-radius: 2px; box-shadow: 1px 1px 50px rgba(0,0,0,.3);} -.layui-layer-close{position:absolute;} -.layui-layer-content{position:relative;} -.layui-layer-border{border: 1px solid #B2B2B2; border: 1px solid rgba(0,0,0,.1); box-shadow: 1px 1px 5px rgba(0,0,0,.2);} -.layui-layer-load{background:url(loading-1.gif) #eee center center no-repeat;} -.layui-layer-ico{ background:url(icon.png) no-repeat;} -.layui-layer-dialog .layui-layer-ico, -.layui-layer-setwin a, -.layui-layer-btn a{display:inline-block; *display:inline; *zoom:1; vertical-align:top;} - -.layui-layer-move{display: none; position: fixed; *position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; cursor: move; opacity: 0; filter:alpha(opacity=0); background-color: #fff; z-index: 2147483647;} -.layui-layer-resize{position: absolute; width: 15px; height: 15px; right: 0; bottom: 0; cursor: se-resize;} - -/* 动画 */ -.layer-anim{-webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration:.3s; animation-duration:.3s;} - -@-webkit-keyframes layer-bounceIn { /* 默认 */ - 0% {opacity: 0; -webkit-transform: scale(.5); transform: scale(.5)} - 100% {opacity: 1; -webkit-transform: scale(1); transform: scale(1)} -} -@keyframes layer-bounceIn { - 0% {opacity: 0; -webkit-transform: scale(.5); -ms-transform: scale(.5); transform: scale(.5)} - 100% {opacity: 1; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1)} -} -.layer-anim-00{-webkit-animation-name: layer-bounceIn;animation-name: layer-bounceIn} - -@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown} - -@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig} - -@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft} - -@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn} - -@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn} - -@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}} - -/* 标题栏 */ -.layui-layer-title{padding:0 80px 0 20px; height: 50px; line-height: 50px; border-bottom:1px solid #F0F0F0; font-size: 14px; color:#333; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; border-radius: 2px 2px 0 0;} -.layui-layer-setwin{position:absolute; right: 15px; *right:0; top: 17px; font-size:0; line-height: initial;} -.layui-layer-setwin a{position:relative; width: 16px; height:16px; margin-left:10px; font-size:12px; _overflow:hidden;} -.layui-layer-setwin .layui-layer-min cite{position:absolute; width:14px; height:2px; left:0; top:50%; margin-top:-1px; background-color:#2E2D3C; cursor:pointer; _overflow:hidden;} -.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA; } -.layui-layer-setwin .layui-layer-max{background-position:-32px -40px;} -.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px;} -.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px;} -.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px;} -.layui-layer-setwin .layui-layer-close1{background-position: 1px -40px; cursor: pointer;} -.layui-layer-setwin .layui-layer-close1:hover{opacity:0.7;} -.layui-layer-setwin .layui-layer-close2{position:absolute; right:-28px; top:-28px; width:30px; height:30px; margin-left:0; background-position:-149px -31px; *right:-18px; _display:none;} -.layui-layer-setwin .layui-layer-close2:hover{ background-position:-180px -31px;} - -/* 按钮栏 */ -.layui-layer-btn{text-align: right; padding: 0 15px 12px; pointer-events: auto; user-select: none; -webkit-user-select: none;} -.layui-layer-btn a{height: 28px; line-height: 28px; margin: 5px 5px 0; padding: 0 15px; border: 1px solid #dedede; background-color:#fff; color: #333; border-radius: 2px; font-weight:400; cursor:pointer; text-decoration: none;} -.layui-layer-btn a:hover{opacity: 0.9; text-decoration: none;} -.layui-layer-btn a:active{opacity: 0.8;} -.layui-layer-btn .layui-layer-btn0{border-color: #1E9FFF; background-color: #1E9FFF; color:#fff;} -.layui-layer-btn-l{text-align: left;} -.layui-layer-btn-c{text-align: center;} - -/* 定制化 */ -.layui-layer-dialog{min-width: 300px;} -.layui-layer-dialog .layui-layer-content{position: relative; padding:20px; line-height:24px; word-break: break-all; overflow:hidden; font-size:14px; overflow-x: hidden; overflow-y:auto;} -.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute; top:16px; left:15px; _left:-40px; width:30px; height:30px;} -.layui-layer-ico1{background-position:-30px 0 } -.layui-layer-ico2{background-position:-60px 0;} -.layui-layer-ico3{background-position:-90px 0;} -.layui-layer-ico4{background-position:-120px 0;} -.layui-layer-ico5{background-position:-150px 0;} -.layui-layer-ico6{background-position:-180px 0;} -.layui-layer-rim{border:6px solid #8D8D8D; border:6px solid rgba(0,0,0,.3); border-radius:5px; box-shadow: none;} -.layui-layer-msg{min-width:180px; border:1px solid #D3D4D3; box-shadow: none;} -.layui-layer-hui{min-width:100px; background-color: #000; filter:alpha(opacity=60); background-color: rgba(0,0,0,0.6); color: #fff; border:none;} -.layui-layer-hui .layui-layer-content{padding:12px 25px; text-align:center;} -.layui-layer-dialog .layui-layer-padding{padding: 20px 20px 20px 55px; text-align: left;} -.layui-layer-page .layui-layer-content{position:relative; overflow:auto;} -.layui-layer-page .layui-layer-btn,.layui-layer-iframe .layui-layer-btn{padding-top:10px;} -.layui-layer-nobg{background:none;} -.layui-layer-iframe iframe{display: block; width: 100%;} - -.layui-layer-loading{border-radius:100%; background:none; box-shadow:none; border:none;} -.layui-layer-loading .layui-layer-content{width:60px; height:24px; background:url(loading-0.gif) no-repeat;} -.layui-layer-loading .layui-layer-loading1{width:37px; height:37px; background:url(loading-1.gif) no-repeat;} -.layui-layer-loading .layui-layer-loading2, .layui-layer-ico16{width:32px; height:32px; background:url(loading-2.gif) no-repeat;} -.layui-layer-tips{background: none; box-shadow:none; border:none;} -.layui-layer-tips .layui-layer-content{position: relative; line-height: 22px; min-width: 12px; padding: 8px 15px; font-size: 12px; _float:left; border-radius: 2px; box-shadow: 1px 1px 3px rgba(0,0,0,.2); background-color: #000; color: #fff;} -.layui-layer-tips .layui-layer-close{right:-2px; top:-1px;} -.layui-layer-tips i.layui-layer-TipsG{ position:absolute; width:0; height:0; border-width:8px; border-color:transparent; border-style:dashed; *overflow:hidden;} -.layui-layer-tips i.layui-layer-TipsT, .layui-layer-tips i.layui-layer-TipsB{left:5px; border-right-style:solid; border-right-color: #000;} -.layui-layer-tips i.layui-layer-TipsT{bottom:-8px;} -.layui-layer-tips i.layui-layer-TipsB{top:-8px;} -.layui-layer-tips i.layui-layer-TipsR, .layui-layer-tips i.layui-layer-TipsL{top: 5px; border-bottom-style:solid; border-bottom-color: #000;} -.layui-layer-tips i.layui-layer-TipsR{left:-8px;} -.layui-layer-tips i.layui-layer-TipsL{right:-8px;} - -/* skin */ -.layui-layer-lan[type="dialog"]{min-width:280px;} -.layui-layer-lan .layui-layer-title{background:#4476A7; color:#fff; border: none;} -.layui-layer-lan .layui-layer-btn{padding: 5px 10px 10px; text-align: right; border-top:1px solid #E9E7E7} -.layui-layer-lan .layui-layer-btn a{background: #fff; border-color: #E9E7E7; color: #333;} -.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5;} -.layui-layer-molv .layui-layer-title{background: #009f95; color:#fff; border: none;} -.layui-layer-molv .layui-layer-btn a{background: #009f95; border-color: #009f95;} -.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1;} - - -/** - - @Name: layer拓展样式 - - */ - -.layui-layer-iconext{background:url(icon-ext.png) no-repeat;} - -/* prompt模式 */ -.layui-layer-prompt .layui-layer-input{display: block; width: 260px; height: 36px; margin: 0 auto; line-height: 30px; padding-left: 10px; border: 1px solid #e6e6e6; color: #333;} -.layui-layer-prompt textarea.layui-layer-input{width: 300px; height: 100px; line-height: 20px; padding: 6px 10px;} -.layui-layer-prompt .layui-layer-content{padding: 20px;} -.layui-layer-prompt .layui-layer-btn{padding-top: 0;} - -/* tab模式 */ -.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4);} -.layui-layer-tab .layui-layer-title{padding-left:0; overflow: visible;} -.layui-layer-tab .layui-layer-title span{position:relative; float:left; min-width:80px; max-width: 300px; padding:0 20px; text-align:center; cursor:default; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; cursor: pointer;} -.layui-layer-tab .layui-layer-title span.layui-this{height: 51px; border-left: 1px solid #eee; border-right: 1px solid #eee; background-color: #fff; z-index: 10;} -.layui-layer-tab .layui-layer-title span:first-child{border-left:none;} -.layui-layer-tabmain{line-height:24px; clear:both;} -.layui-layer-tabmain .layui-layer-tabli{display:none;} -.layui-layer-tabmain .layui-layer-tabli.layui-this{display: block;} - -/* photo模式 */ -.layui-layer-photos{background: none; box-shadow: none;} -.layui-layer-photos .layui-layer-content{overflow:hidden; text-align: center;} -.layui-layer-photos .layui-layer-phimg img{position: relative; width:100%; display: inline-block; *display:inline; *zoom:1; vertical-align:top;} -.layui-layer-imgprev, .layui-layer-imgnext{position: fixed; top: 50%; width: 27px; _width: 44px; height: 44px; margin-top:-22px; outline:none;blr:expression(this.onFocus=this.blur());} -.layui-layer-imgprev{left: 30px; background-position:-5px -5px; _background-position:-70px -5px;} -.layui-layer-imgprev:hover{background-position:-33px -5px; _background-position:-120px -5px;} -.layui-layer-imgnext{right: 30px; _right:8px; background-position:-5px -50px; _background-position:-70px -50px;} -.layui-layer-imgnext:hover{background-position: -33px -50px; _background-position: -120px -50px;} -.layui-layer-imgbar{position: fixed; left:0; right: 0; bottom:0; width:100%; height: 40px; line-height: 40px; background-color:#000\9; filter:Alpha(opacity=60); background-color: rgba(2,0,0,.35); color: #fff; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; font-size:0;} -.layui-layer-imgtit{/*position:absolute; left:20px;*/} -.layui-layer-imgtit *{display:inline-block; *display:inline; *zoom:1; vertical-align:top; font-size:12px;} -.layui-layer-imgtit a{max-width:65%; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; color:#fff;} -.layui-layer-imgtit a:hover{color:#fff; text-decoration:underline;} -.layui-layer-imgtit em{padding-left:10px; font-style: normal;} - -/* 关闭动画 */ -@-webkit-keyframes layer-bounceOut { - 100% {opacity: 0; -webkit-transform: scale(.7); transform: scale(.7)} - 30% {-webkit-transform: scale(1.05); transform: scale(1.05)} - 0% {-webkit-transform: scale(1); transform: scale(1);} -} -@keyframes layer-bounceOut { - 100% {opacity: 0; -webkit-transform: scale(.7); -ms-transform: scale(.7); transform: scale(.7);} - 30% {-webkit-transform: scale(1.05); -ms-transform: scale(1.05); transform: scale(1.05);} - 0% {-webkit-transform: scale(1); -ms-transform: scale(1);transform: scale(1);} -} -.layer-anim-close{-webkit-animation-name: layer-bounceOut; animation-name: layer-bounceOut; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration:.2s; animation-duration:.2s;} - -@media screen and (max-width: 1100px) { - .layui-layer-iframe{overflow-y: auto; -webkit-overflow-scrolling: touch;} -} - - diff --git a/static/Layui/v2.6.8/css/modules/layer/default/loading-0.gif b/static/Layui/v2.6.8/css/modules/layer/default/loading-0.gif deleted file mode 100644 index 6f3c953..0000000 Binary files a/static/Layui/v2.6.8/css/modules/layer/default/loading-0.gif and /dev/null differ diff --git a/static/Layui/v2.6.8/css/modules/layer/default/loading-1.gif b/static/Layui/v2.6.8/css/modules/layer/default/loading-1.gif deleted file mode 100644 index db3a483..0000000 Binary files a/static/Layui/v2.6.8/css/modules/layer/default/loading-1.gif and /dev/null differ diff --git a/static/Layui/v2.6.8/css/modules/layer/default/loading-2.gif b/static/Layui/v2.6.8/css/modules/layer/default/loading-2.gif deleted file mode 100644 index 5bb90fd..0000000 Binary files a/static/Layui/v2.6.8/css/modules/layer/default/loading-2.gif and /dev/null differ diff --git a/static/Layui/v2.6.8/font/iconfont.eot b/static/Layui/v2.6.8/font/iconfont.eot deleted file mode 100644 index 622d7ec..0000000 Binary files a/static/Layui/v2.6.8/font/iconfont.eot and /dev/null differ diff --git a/static/Layui/v2.6.8/font/iconfont.svg b/static/Layui/v2.6.8/font/iconfont.svg deleted file mode 100644 index 999ca1f..0000000 --- a/static/Layui/v2.6.8/font/iconfont.svg +++ /dev/null @@ -1,554 +0,0 @@ - - - - - -Created by iconfont - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/Layui/v2.6.8/font/iconfont.ttf b/static/Layui/v2.6.8/font/iconfont.ttf deleted file mode 100644 index 06e30f9..0000000 Binary files a/static/Layui/v2.6.8/font/iconfont.ttf and /dev/null differ diff --git a/static/Layui/v2.6.8/font/iconfont.woff b/static/Layui/v2.6.8/font/iconfont.woff deleted file mode 100644 index 66a1783..0000000 Binary files a/static/Layui/v2.6.8/font/iconfont.woff and /dev/null differ diff --git a/static/Layui/v2.6.8/font/iconfont.woff2 b/static/Layui/v2.6.8/font/iconfont.woff2 deleted file mode 100644 index 47e9980..0000000 Binary files a/static/Layui/v2.6.8/font/iconfont.woff2 and /dev/null differ diff --git a/static/Layui/v2.6.8/layui.js b/static/Layui/v2.6.8/layui.js deleted file mode 100644 index a35f391..0000000 --- a/static/Layui/v2.6.8/layui.js +++ /dev/null @@ -1,754 +0,0 @@ - -/*! - * Layui - * Classic modular Front-End UI library - * MIT Licensed - */ - -;!function(win){ - "use strict"; - - var doc = win.document, config = { - modules: {} //记录模块物理路径 - ,status: {} //记录模块加载状态 - ,timeout: 10 //符合规范的模块请求最长等待秒数 - ,event: {} //记录模块自定义事件 - } - - ,Layui = function(){ - this.v = '2.6.8'; // layui 版本号 - } - - //识别预先可能定义的指定全局对象 - ,GLOBAL = win.LAYUI_GLOBAL || {} - - //获取 layui 所在目录 - ,getPath = function(){ - var jsPath = doc.currentScript ? doc.currentScript.src : function(){ - var js = doc.scripts - ,last = js.length - 1 - ,src; - for(var i = last; i > 0; i--){ - if(js[i].readyState === 'interactive'){ - src = js[i].src; - break; - } - } - return src || js[last].src; - }(); - - return config.dir = GLOBAL.dir || jsPath.substring(0, jsPath.lastIndexOf('/') + 1); - }() - - //异常提示 - ,error = function(msg, type){ - type = type || 'log'; - win.console && console[type] && console[type]('layui error hint: ' + msg); - } - - ,isOpera = typeof opera !== 'undefined' && opera.toString() === '[object Opera]' - - //内置模块 - ,modules = config.builtin = { - lay: 'lay' //基础 DOM 操作 - ,layer: 'layer' //弹层 - ,laydate: 'laydate' //日期 - ,laypage: 'laypage' //分页 - ,laytpl: 'laytpl' //模板引擎 - ,layedit: 'layedit' //富文本编辑器 - ,form: 'form' //表单集 - ,upload: 'upload' //上传 - ,dropdown: 'dropdown' //下拉菜单 - ,transfer: 'transfer' //穿梭框 - ,tree: 'tree' //树结构 - ,table: 'table' //表格 - ,element: 'element' //常用元素操作 - ,rate: 'rate' //评分组件 - ,colorpicker: 'colorpicker' //颜色选择器 - ,slider: 'slider' //滑块 - ,carousel: 'carousel' //轮播 - ,flow: 'flow' //流加载 - ,util: 'util' //工具块 - ,code: 'code' //代码修饰器 - ,jquery: 'jquery' //DOM 库(第三方) - - ,all: 'all' - ,'layui.all': 'layui.all' //聚合标识(功能性的,非真实模块) - }; - - //记录基础数据 - Layui.prototype.cache = config; - - //定义模块 - Layui.prototype.define = function(deps, factory){ - var that = this - ,type = typeof deps === 'function' - ,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 && ( - factory = deps, - deps = [] - ); - - that.use(deps, callback, null, 'define'); - return that; - }; - - //使用特定模块 - Layui.prototype.use = function(apps, callback, exports, from){ - var that = this - ,dir = config.dir = config.dir ? config.dir : getPath - ,head = doc.getElementsByTagName('head')[0]; - - apps = function(){ - if(typeof apps === 'string'){ - return [apps]; - } - //当第一个参数为 function 时,则自动加载所有内置模块,且执行的回调即为该 function 参数; - else if(typeof apps === 'function'){ - callback = apps; - return ['all']; - } - return apps; - }(); - - //如果页面已经存在 jQuery 1.7+ 库且所定义的模块依赖 jQuery,则不加载内部 jquery 模块 - if(win.jQuery && jQuery.fn.on){ - that.each(apps, function(index, item){ - if(item === 'jquery'){ - apps.splice(index, 1); - } - }); - layui.jquery = layui.$ = jQuery; - } - - var item = apps[0] - ,timeout = 0; - exports = exports || []; - - //静态资源host - config.host = config.host || (dir.match(/\/\/([\s\S]+?)\//)||['//'+ location.host +'/'])[0]; - - //加载完毕 - function onScriptLoad(e, url){ - var readyRegExp = navigator.platform === 'PLaySTATION 3' ? /^complete$/ : /^(complete|loaded)$/ - if (e.type === 'load' || (readyRegExp.test((e.currentTarget || e.srcElement).readyState))) { - config.modules[item] = url; - head.removeChild(node); - (function poll() { - if(++timeout > config.timeout * 1000 / 4){ - return error(item + ' is not a valid module', 'error'); - }; - config.status[item] ? onCallback() : setTimeout(poll, 4); - }()); - } - } - - //回调 - function onCallback(){ - exports.push(layui[item]); - apps.length > 1 ? - that.use(apps.slice(1), callback, exports, from) - : ( typeof callback === 'function' && function(){ - //保证文档加载完毕再执行回调 - if(layui.jquery && typeof layui.jquery === 'function' && from !== 'define'){ - return layui.jquery(function(){ - callback.apply(layui, exports); - }); - } - callback.apply(layui, exports); - }() ); - } - - //如果引入了聚合板,内置的模块则不必重复加载 - if( apps.length === 0 || (layui['layui.all'] && modules[item]) ){ - return onCallback(), that; - } - - //获取加载的模块 URL - //如果是内置模块,则按照 dir 参数拼接模块路径 - //如果是扩展模块,则判断模块路径值是否为 {/} 开头, - //如果路径值是 {/} 开头,则模块路径即为后面紧跟的字符。 - //否则,则按照 base 参数拼接模块路径 - - var url = ( modules[item] ? (dir + 'modules/') - : (/^\{\/\}/.test(that.modules[item]) ? '' : (config.base || '')) - ) + (that.modules[item] || item) + '.js'; - url = url.replace(/^\{\/\}/, ''); - - //如果扩展模块(即:非内置模块)对象已经存在,则不必再加载 - if(!config.modules[item] && layui[item]){ - config.modules[item] = url; //并记录起该扩展模块的 url - } - - //首次加载模块 - if(!config.modules[item]){ - var node = doc.createElement('script'); - - node.async = true; - node.charset = 'utf-8'; - node.src = url + function(){ - var version = config.version === true - ? (config.v || (new Date()).getTime()) - : (config.version||''); - return version ? ('?v=' + version) : ''; - }(); - - head.appendChild(node); - - if(node.attachEvent && !(node.attachEvent.toString && node.attachEvent.toString().indexOf('[native code') < 0) && !isOpera){ - node.attachEvent('onreadystatechange', function(e){ - onScriptLoad(e, url); - }); - } else { - node.addEventListener('load', function(e){ - onScriptLoad(e, url); - }, false); - } - - config.modules[item] = url; - } else { //缓存 - (function poll() { - if(++timeout > config.timeout * 1000 / 4){ - return error(item + ' is not a valid module', 'error'); - }; - (typeof config.modules[item] === 'string' && config.status[item]) - ? onCallback() - : setTimeout(poll, 4); - }()); - } - - return that; - }; - - //获取节点的 style 属性值 - Layui.prototype.getStyle = function(node, name){ - var style = node.currentStyle ? node.currentStyle : win.getComputedStyle(node, null); - return style[style.getPropertyValue ? 'getPropertyValue' : 'getAttribute'](name); - }; - - //css外部加载器 - Layui.prototype.link = function(href, fn, cssname){ - var that = this - ,head = doc.getElementsByTagName('head')[0] - ,link = doc.createElement('link'); - - if(typeof fn === 'string') cssname = fn; - - var app = (cssname || href).replace(/\.|\//g, '') - ,id = link.id = 'layuicss-'+ app - ,STAUTS_NAME = 'creating' - ,timeout = 0; - - link.rel = 'stylesheet'; - link.href = href + (config.debug ? '?v='+new Date().getTime() : ''); - link.media = 'all'; - - if(!doc.getElementById(id)){ - head.appendChild(link); - } - - if(typeof fn !== 'function') return that; - - //轮询 css 是否加载完毕 - (function poll(status) { - var delay = 100 - ,getLinkElem = doc.getElementById(id); //获取动态插入的 link 元素 - - //如果轮询超过指定秒数,则视为请求文件失败或 css 文件不符合规范 - if(++timeout > config.timeout * 1000 / delay){ - return error(href + ' timeout'); - }; - - //css 加载就绪 - if(parseInt(that.getStyle(getLinkElem, 'width')) === 1989){ - //如果参数来自于初始轮询(即未加载就绪时的),则移除 link 标签状态 - if(status === STAUTS_NAME) getLinkElem.removeAttribute('lay-status'); - //如果 link 标签的状态仍为「创建中」,则继续进入轮询,直到状态改变,则执行回调 - getLinkElem.getAttribute('lay-status') === STAUTS_NAME ? setTimeout(poll, delay) : fn(); - } else { - getLinkElem.setAttribute('lay-status', STAUTS_NAME); - setTimeout(function(){ - poll(STAUTS_NAME); - }, delay); - } - }()); - - //轮询css是否加载完毕 - /* - (function poll() { - if(++timeout > config.timeout * 1000 / 100){ - return error(href + ' timeout'); - }; - parseInt(that.getStyle(doc.getElementById(id), 'width')) === 1989 ? function(){ - fn(); - }() : setTimeout(poll, 100); - }()); - */ - - return that; - }; - - //css 内部加载器 - Layui.prototype.addcss = function(firename, fn, cssname){ - return layui.link(config.dir + 'css/' + firename, fn, cssname); - }; - - //存储模块的回调 - config.callback = {}; - - //重新执行模块的工厂函数 - Layui.prototype.factory = function(modName){ - if(layui[modName]){ - return typeof config.callback[modName] === 'function' - ? config.callback[modName] - : null; - } - }; - - //图片预加载 - Layui.prototype.img = function(url, callback, error) { - var img = new Image(); - img.src = url; - if(img.complete){ - return callback(img); - } - img.onload = function(){ - img.onload = null; - typeof callback === 'function' && callback(img); - }; - img.onerror = function(e){ - img.onerror = null; - typeof error === 'function' && error(e); - }; - }; - - //全局配置 - Layui.prototype.config = function(options){ - options = options || {}; - for(var key in options){ - config[key] = options[key]; - } - return this; - }; - - //记录全部模块 - Layui.prototype.modules = function(){ - var clone = {}; - for(var o in modules){ - clone[o] = modules[o]; - } - return clone; - }(); - - //拓展模块 - Layui.prototype.extend = function(options){ - var that = this; - - //验证模块是否被占用 - options = options || {}; - for(var o in options){ - if(that[o] || that.modules[o]){ - error(o+ ' Module already exists', 'error'); - } else { - that.modules[o] = options[o]; - } - } - - return that; - }; - - // location.hash 路由解析 - Layui.prototype.router = function(hash){ - var that = this - ,hash = hash || location.hash - ,data = { - path: [] - ,search: {} - ,hash: (hash.match(/[^#](#.*$)/) || [])[1] || '' - }; - - if(!/^#\//.test(hash)) return data; //禁止非路由规范 - hash = hash.replace(/^#\//, ''); - data.href = '/' + hash; - hash = hash.replace(/([^#])(#.*$)/, '$1').split('/') || []; - - //提取 Hash 结构 - that.each(hash, function(index, item){ - /^\w+=/.test(item) ? function(){ - item = item.split('='); - data.search[item[0]] = item[1]; - }() : data.path.push(item); - }); - - return data; - }; - - //URL 解析 - Layui.prototype.url = function(href){ - var that = this - ,data = { - //提取 url 路径 - pathname: function(){ - var pathname = href - ? function(){ - var str = (href.match(/\.[^.]+?\/.+/) || [])[0] || ''; - return str.replace(/^[^\/]+/, '').replace(/\?.+/, ''); - }() - : location.pathname; - return pathname.replace(/^\//, '').split('/'); - }() - - //提取 url 参数 - ,search: function(){ - var obj = {} - ,search = (href - ? function(){ - var str = (href.match(/\?.+/) || [])[0] || ''; - return str.replace(/\#.+/, ''); - }() - : location.search - ).replace(/^\?+/, '').split('&'); //去除 ?,按 & 分割参数 - - //遍历分割后的参数 - that.each(search, function(index, item){ - var _index = item.indexOf('=') - ,key = function(){ //提取 key - if(_index < 0){ - return item.substr(0, item.length); - } else if(_index === 0){ - return false; - } else { - return item.substr(0, _index); - } - }(); - //提取 value - if(key){ - obj[key] = _index > 0 ? item.substr(_index + 1) : null; - } - }); - - return obj; - }() - - //提取 Hash - ,hash: that.router(function(){ - return href - ? ((href.match(/#.+/) || [])[0] || '/') - : location.hash; - }()) - }; - - return data; - }; - - //本地持久性存储 - 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 storage[table]; - } - - settings = typeof settings === 'object' - ? settings - : {key: settings}; - - try{ - 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]; - 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){ - var agent = navigator.userAgent.toLowerCase() - - //获取版本号 - ,getVersion = function(label){ - var exp = new RegExp(label + '/([^\\s\\_\\-]+)'); - label = (agent.match(exp)||[])[1]; - return label || false; - } - - //返回结果集 - ,result = { - os: function(){ //底层操作系统 - if(/windows/.test(agent)){ - return 'windows'; - } else if(/linux/.test(agent)){ - return 'linux'; - } else if(/iphone|ipod|ipad|ios/.test(agent)){ - return 'ios'; - } else if(/mac/.test(agent)){ - return 'mac'; - } - }() - ,ie: function(){ //ie版本 - return (!!win.ActiveXObject || "ActiveXObject" in win) ? ( - (agent.match(/msie\s(\d+)/) || [])[1] || '11' //由于ie11并没有msie的标识 - ) : false; - }() - ,weixin: getVersion('micromessenger') //是否微信 - }; - - //任意的key - if(key && !result[key]){ - result[key] = getVersion(key); - } - - //移动设备 - result.android = /android/.test(agent); - result.ios = result.os === 'ios'; - result.mobile = (result.android || result.ios) ? true : false; - - return result; - }; - - //提示 - Layui.prototype.hint = function(){ - return { - error: error - }; - }; - - //typeof 类型细分 -> string/number/boolean/undefined/null、object/array/function/… - Layui.prototype._typeof = function(operand){ - if(operand === null) return String(operand); - - //细分引用类型 - return (typeof operand === 'object' || typeof operand === 'function') ? function(){ - var type = Object.prototype.toString.call(operand).match(/\s(.+)\]$/) || [] //匹配类型字符 - ,classType = 'Function|Array|Date|RegExp|Object|Error|Symbol'; //常见类型字符 - - type = type[1] || 'Object'; - - //除匹配到的类型外,其他对象均返回 object - return new RegExp('\\b('+ classType + ')\\b').test(type) - ? type.toLowerCase() - : 'object'; - }() : typeof operand; - }; - - //对象是否具备数组结构(此处为兼容 jQuery 对象) - Layui.prototype._isArray = function(obj){ - var that = this - ,len - ,type = that._typeof(obj); - - if(!obj || (typeof obj !== 'object') || obj === win) return false; - - len = 'length' in obj && obj.length; //兼容 ie - return type === 'array' || len === 0 || ( - typeof len === 'number' && len > 0 && (len - 1) in obj //兼容 jQuery 对象 - ); - }; - - //遍历 - Layui.prototype.each = function(obj, fn){ - var key - ,that = this - ,callFn = function(key, obj){ //回调 - return fn.call(obj[key], key, obj[key]) - }; - - if(typeof fn !== 'function') return that; - obj = obj || []; - - //优先处理数组结构 - if(that._isArray(obj)){ - for(key = 0; key < obj.length; key++){ - if(callFn(key, obj)) break; - } - } else { - for(key in obj){ - if(callFn(key, obj)) break; - } - } - - return that; - }; - - //将数组中的对象按其某个成员排序 - Layui.prototype.sort = function(obj, key, desc){ - var clone = JSON.parse( - JSON.stringify(obj || []) - ); - - if(!key) return clone; - - //如果是数字,按大小排序;如果是非数字,则按字典序排序 - clone.sort(function(o1, o2){ - var v1 = o1[key] - ,v2 = o2[key] - ,isNum = [ - !isNaN(v1) - ,!isNaN(v2) - ]; - - - //若为数字比较 - if(isNum[0] && isNum[1]){ - if(v1 && (!v2 && v2 !== 0)){ //数字 vs 空 - return 1; - } else if((!v1 && v1 !== 0) && v2){ //空 vs 数字 - return -1; - } else { //数字 vs 数字 - return v1 - v2; - } - }; - - /** - * 字典序排序 - */ - - //若为非数字比较 - if(!isNum[0] && !isNum[1]){ - //字典序比较 - if(v1 > v2){ - return 1; - } else if (v1 < v2) { - return -1; - } else { - return 0; - } - } - - //若为混合比较 - if(isNum[0] || !isNum[1]){ //数字 vs 非数字 - return -1; - } else if(!isNum[0] || isNum[1]) { //非数字 vs 数字 - return 1; - } - - /* - //老版本 - if(v1 && !v2){ - return 1; - } else if(!v1 && v2){ - return -1; - } - - if(v1 > v2){ - return 1; - } else if (v1 < v2) { - return -1; - } else { - return 0; - } - */ - - }); - - desc && clone.reverse(); //倒序 - return clone; - }; - - //阻止事件冒泡 - Layui.prototype.stope = function(thisEvent){ - thisEvent = thisEvent || win.event; - try { thisEvent.stopPropagation() } catch(e){ - thisEvent.cancelBubble = true; - } - }; - - //字符常理 - var EV_REMOVE = 'LAYUI-EVENT-REMOVE'; - - //自定义模块事件 - Layui.prototype.onevent = function(modName, events, callback){ - if(typeof modName !== 'string' - || typeof callback !== 'function') return this; - - return Layui.event(modName, events, null, callback); - }; - - //执行自定义模块事件 - Layui.prototype.event = Layui.event = function(modName, events, params, fn){ - var that = this - ,result = null - ,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); - }; - - //如果参数传入特定字符,则执行移除事件 - if(params === EV_REMOVE){ - delete (that.cache.event[eventName] || {})[filterName]; - return that; - } - - //添加事件 - 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); - (filterName && key === filterName) && layui.each(item, callback); - }); - - return result; - }; - - //新增模块事件 - Layui.prototype.on = function(events, modName, callback){ - var that = this; - return that.onevent.call(that, modName, events, callback); - } - - //移除模块事件 - Layui.prototype.off = function(events, modName){ - var that = this; - return that.event.call(that, modName, events, EV_REMOVE); - }; - - //exports layui - win.layui = new Layui(); - -}(window); //gulp build: layui-footer - diff --git a/static/Layui/v2.6.8/modules/all.js b/static/Layui/v2.6.8/modules/all.js deleted file mode 100644 index 6c7aa24..0000000 --- a/static/Layui/v2.6.8/modules/all.js +++ /dev/null @@ -1,32 +0,0 @@ - -/*! - * 用于加载所有内置模块 - * MIT Licensed - */ - -layui.define(function(){ - var mods = [] - ,builtin = layui.cache.builtin; - layui.each(builtin, function(modName){ - (modName === 'all' || modName === 'layui.all') || mods.push(modName); - }); - layui.cache.startTime = new Date().getTime(); - - return mods; -}(), function(exports){ - "use strict"; - - var MOD_NAME = 'all' - - //外部接口 - ,all = { - config: {} - ,time: function(){ - var time = new Date().getTime() - layui.cache.startTime; - delete layui.cache.startTime; - return time; - }() - }; - - exports(MOD_NAME, all); -}); diff --git a/static/Layui/v2.6.8/modules/carousel.js b/static/Layui/v2.6.8/modules/carousel.js deleted file mode 100644 index ef1a905..0000000 --- a/static/Layui/v2.6.8/modules/carousel.js +++ /dev/null @@ -1,313 +0,0 @@ - -/*! - * carousel 轮播模块 - * MIT Licensed - */ - -layui.define('jquery', function(exports){ - "use strict"; - - var $ = layui.$ - ,hint = layui.hint() - ,device = layui.device() - - //外部接口 - ,carousel = { - config: {} //全局配置项 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //字符常量 - ,MOD_NAME = 'carousel', ELEM = '.layui-carousel', THIS = 'layui-this', SHOW = 'layui-show', HIDE = 'layui-hide', DISABLED = 'layui-disabled' - - ,ELEM_ITEM = '>*[carousel-item]>*', ELEM_LEFT = 'layui-carousel-left', ELEM_RIGHT = 'layui-carousel-right', ELEM_PREV = 'layui-carousel-prev', ELEM_NEXT = 'layui-carousel-next', ELEM_ARROW = 'layui-carousel-arrow', ELEM_IND = 'layui-carousel-ind' - - //构造器 - ,Class = function(options){ - var that = this; - that.config = $.extend({}, that.config, carousel.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - width: '600px' - ,height: '280px' - ,full: false //是否全屏 - ,arrow: 'hover' //切换箭头默认显示状态:hover/always/none - ,indicator: 'inside' //指示器位置:inside/outside/none - ,autoplay: true //是否自动切换 - ,interval: 3000 //自动切换的时间间隔,不能低于800ms - ,anim: '' //动画类型:default/updown/fade - ,trigger: 'click' //指示器的触发方式:click/hover - ,index: 0 //初始开始的索引 - }; - - //轮播渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - options.elem = $(options.elem); - if(!options.elem[0]) return; - that.elemItem = options.elem.find(ELEM_ITEM); - - if(options.index < 0) options.index = 0; - if(options.index >= that.elemItem.length) options.index = that.elemItem.length - 1; - if(options.interval < 800) options.interval = 800; - - //是否全屏模式 - if(options.full){ - options.elem.css({ - position: 'fixed' - ,width: '100%' - ,height: '100%' - ,zIndex: 9999 - }); - } else { - options.elem.css({ - width: options.width - ,height: options.height - }); - } - - options.elem.attr('lay-anim', options.anim); - - //初始焦点状态 - that.elemItem.eq(options.index).addClass(THIS); - - //指示器等动作 - if(that.elemItem.length <= 1) return; - that.indicator(); - that.arrow(); - that.autoplay(); - that.events(); - }; - - //重置轮播 - Class.prototype.reload = function(options){ - var that = this; - clearInterval(that.timer); - that.config = $.extend({}, that.config, options); - that.render(); - }; - - //获取上一个等待条目的索引 - Class.prototype.prevIndex = function(){ - var that = this - ,options = that.config; - - var prevIndex = options.index - 1; - if(prevIndex < 0){ - prevIndex = that.elemItem.length - 1; - } - return prevIndex; - }; - - //获取下一个等待条目的索引 - Class.prototype.nextIndex = function(){ - var that = this - ,options = that.config; - - var nextIndex = options.index + 1; - if(nextIndex >= that.elemItem.length){ - nextIndex = 0; - } - return nextIndex; - }; - - //索引递增 - Class.prototype.addIndex = function(num){ - var that = this - ,options = that.config; - - num = num || 1; - options.index = options.index + num; - - //index不能超过轮播总数量 - if(options.index >= that.elemItem.length){ - options.index = 0; - } - }; - - //索引递减 - Class.prototype.subIndex = function(num){ - var that = this - ,options = that.config; - - num = num || 1; - options.index = options.index - num; - - //index不能超过轮播总数量 - if(options.index < 0){ - options.index = that.elemItem.length - 1; - } - }; - - //自动轮播 - Class.prototype.autoplay = function(){ - var that = this - ,options = that.config; - - if(!options.autoplay) return; - clearInterval(that.timer); - - that.timer = setInterval(function(){ - that.slide(); - }, options.interval); - }; - - //箭头 - Class.prototype.arrow = function(){ - var that = this - ,options = that.config; - - //模板 - var tplArrow = $([ - '' - ,'' - ].join('')); - - //预设基础属性 - options.elem.attr('lay-arrow', options.arrow); - - //避免重复插入 - if(options.elem.find('.'+ELEM_ARROW)[0]){ - options.elem.find('.'+ELEM_ARROW).remove(); - }; - options.elem.append(tplArrow); - - //事件 - tplArrow.on('click', function(){ - var othis = $(this) - ,type = othis.attr('lay-type') - that.slide(type); - }); - }; - - //指示器 - Class.prototype.indicator = function(){ - var that = this - ,options = that.config; - - //模板 - var tplInd = that.elemInd = $(['
'].join('')); - - //预设基础属性 - options.elem.attr('lay-indicator', options.indicator); - - //避免重复插入 - if(options.elem.find('.'+ELEM_IND)[0]){ - options.elem.find('.'+ELEM_IND).remove(); - }; - options.elem.append(tplInd); - - if(options.anim === 'updown'){ - tplInd.css('margin-top', -(tplInd.height()/2)); - } - - //事件 - tplInd.find('li').on(options.trigger === 'hover' ? 'mouseover' : options.trigger, function(){ - var othis = $(this) - ,index = othis.index(); - if(index > options.index){ - that.slide('add', index - options.index); - } else if(index < options.index){ - that.slide('sub', options.index - index); - } - }); - }; - - //滑动切换 - Class.prototype.slide = function(type, num){ - var that = this - ,elemItem = that.elemItem - ,options = that.config - ,thisIndex = options.index - ,filter = options.elem.attr('lay-filter'); - - if(that.haveSlide) return; - - //滑动方向 - if(type === 'sub'){ - that.subIndex(num); - elemItem.eq(options.index).addClass(ELEM_PREV); - setTimeout(function(){ - elemItem.eq(thisIndex).addClass(ELEM_RIGHT); - elemItem.eq(options.index).addClass(ELEM_RIGHT); - }, 50); - } else { //默认递增滑 - that.addIndex(num); - elemItem.eq(options.index).addClass(ELEM_NEXT); - setTimeout(function(){ - elemItem.eq(thisIndex).addClass(ELEM_LEFT); - elemItem.eq(options.index).addClass(ELEM_LEFT); - }, 50); - }; - - //移除过度类 - setTimeout(function(){ - elemItem.removeClass(THIS + ' ' + ELEM_PREV + ' ' + ELEM_NEXT + ' ' + ELEM_LEFT + ' ' + ELEM_RIGHT); - elemItem.eq(options.index).addClass(THIS); - that.haveSlide = false; //解锁 - }, 300); - - //指示器焦点 - that.elemInd.find('li').eq(options.index).addClass(THIS) - .siblings().removeClass(THIS); - - that.haveSlide = true; - - layui.event.call(this, MOD_NAME, 'change('+ filter +')', { - index: options.index - ,prevIndex: thisIndex - ,item: elemItem.eq(options.index) - }); - }; - - //事件处理 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - - if(options.elem.data('haveEvents')) return; - - //移入移出容器 - options.elem.on('mouseenter', function(){ - clearInterval(that.timer); - }).on('mouseleave', function(){ - that.autoplay(); - }); - - options.elem.data('haveEvents', true); - }; - - //核心入口 - carousel.render = function(options){ - var inst = new Class(options); - return inst; - }; - - exports(MOD_NAME, carousel); -}); - - diff --git a/static/Layui/v2.6.8/modules/code.js b/static/Layui/v2.6.8/modules/code.js deleted file mode 100644 index 8496e13..0000000 --- a/static/Layui/v2.6.8/modules/code.js +++ /dev/null @@ -1,59 +0,0 @@ - -/** - * code 代码修饰器 - * MIT Licensed - */ - -layui.define('jquery', function(exports){ - "use strict"; - - var $ = layui.$; - - exports('code', function(options){ - var elems = []; - options = options || {}; - options.elem = $(options.elem||'.layui-code'); - options.lang = 'lang' in options ? options.lang : 'code'; - - options.elem.each(function(){ - elems.push(this); - }); - - layui.each(elems.reverse(), function(index, item){ - var othis = $(item), html = othis.html(); - - //转义HTML标签 - if(othis.attr('lay-encode') || options.encode){ - html = html.replace(/&(?!#?[a-zA-Z0-9]+;)/g, '&') - .replace(//g, '>').replace(/'/g, ''').replace(/"/g, '"') - } - - othis.html('
  1. ' + html.replace(/[\r\t\n]+/g, '
  2. ') + '
') - - if(!othis.find('>.layui-code-h3')[0]){ - othis.prepend('

'+ (othis.attr('lay-title')||options.title||'</>') + ''+ (othis.attr('lay-lang')||options.lang||'') +'' + '

'); - } - - var ol = othis.find('>.layui-code-ol'); - othis.addClass('layui-box layui-code-view'); - - //识别皮肤 - if(othis.attr('lay-skin') || options.skin){ - othis.addClass('layui-code-' +(othis.attr('lay-skin') || options.skin)); - } - - //按行数适配左边距 - if((ol.find('li').length/100|0) > 0){ - ol.css('margin-left', (ol.find('li').length/100|0) + 'px'); - } - - //设置最大高度 - if(othis.attr('lay-height') || options.height){ - ol.css('max-height', othis.attr('lay-height') || options.height); - } - - }); - - }); -}).addcss('modules/code.css?v=2', 'skincodecss'); - diff --git a/static/Layui/v2.6.8/modules/colorpicker.js b/static/Layui/v2.6.8/modules/colorpicker.js deleted file mode 100644 index 083c1e1..0000000 --- a/static/Layui/v2.6.8/modules/colorpicker.js +++ /dev/null @@ -1,691 +0,0 @@ - -/*! - * colorpicker - * 颜色选择组件 - */ - -layui.define(['jquery', 'lay'], function(exports){ - "use strict"; - - var $ = layui.jquery - ,lay = layui.lay - ,device = layui.device() - ,clickOrMousedown = (device.mobile ? 'click' : 'mousedown') - - //外部接口 - ,colorpicker = { - config: {} - ,index: layui.colorpicker ? (layui.colorpicker.index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, 'colorpicker', events, callback); - } - } - - //操作当前实例 - ,thisColorPicker = function(){ - var that = this - ,options = that.config; - - return { - config: options - } - } - - //字符常量 - ,MOD_NAME = 'colorpicker', SHOW = 'layui-show', THIS = 'layui-this', ELEM = 'layui-colorpicker' - - ,ELEM_MAIN = '.layui-colorpicker-main', ICON_PICKER_DOWN = 'layui-icon-down', ICON_PICKER_CLOSE = 'layui-icon-close' - ,PICKER_TRIG_SPAN = 'layui-colorpicker-trigger-span', PICKER_TRIG_I = 'layui-colorpicker-trigger-i', PICKER_SIDE = 'layui-colorpicker-side', PICKER_SIDE_SLIDER = 'layui-colorpicker-side-slider' - ,PICKER_BASIS = 'layui-colorpicker-basis', PICKER_ALPHA_BG = 'layui-colorpicker-alpha-bgcolor', PICKER_ALPHA_SLIDER = 'layui-colorpicker-alpha-slider', PICKER_BASIS_CUR = 'layui-colorpicker-basis-cursor', PICKER_INPUT = 'layui-colorpicker-main-input' - - //RGB转HSB - ,RGBToHSB = function(rgb){ - var hsb = {h:0, s:0, b:0}; - var min = Math.min(rgb.r, rgb.g, rgb.b); - var max = Math.max(rgb.r, rgb.g, rgb.b); - var delta = max - min; - hsb.b = max; - hsb.s = max != 0 ? 255*delta/max : 0; - if(hsb.s != 0){ - if(rgb.r == max){ - hsb.h = (rgb.g - rgb.b) / delta; - }else if(rgb.g == max){ - hsb.h = 2 + (rgb.b - rgb.r) / delta; - }else{ - hsb.h = 4 + (rgb.r - rgb.g) / delta; - } - }else{ - hsb.h = -1; - }; - if(max == min){ - hsb.h = 0; - }; - hsb.h *= 60; - if(hsb.h < 0) { - hsb.h += 360; - }; - hsb.s *= 100/255; - hsb.b *= 100/255; - return hsb; - } - - //HEX转HSB - ,HEXToHSB = function(hex){ - var hex = hex.indexOf('#') > -1 ? hex.substring(1) : hex; - if(hex.length == 3){ - var num = hex.split(""); - hex = num[0]+num[0]+num[1]+num[1]+num[2]+num[2] - }; - hex = parseInt(hex, 16); - var rgb = {r:hex >> 16, g:(hex & 0x00FF00) >> 8, b:(hex & 0x0000FF)}; - return RGBToHSB(rgb); - } - - //HSB转RGB - ,HSBToRGB = function(hsb){ - var rgb = {}; - var h = hsb.h; - var s = hsb.s*255/100; - var b = hsb.b*255/100; - if(s == 0){ - rgb.r = rgb.g = rgb.b = b; - }else{ - var t1 = b; - var t2 = (255 - s) * b /255; - var t3 = (t1 - t2) * (h % 60) /60; - if(h == 360) h = 0; - if(h < 60) {rgb.r=t1; rgb.b=t2; rgb.g=t2+t3} - else if(h < 120) {rgb.g=t1; rgb.b=t2; rgb.r=t1-t3} - else if(h < 180) {rgb.g=t1; rgb.r=t2; rgb.b=t2+t3} - else if(h < 240) {rgb.b=t1; rgb.r=t2; rgb.g=t1-t3} - else if(h < 300) {rgb.b=t1; rgb.g=t2; rgb.r=t2+t3} - else if(h < 360) {rgb.r=t1; rgb.g=t2; rgb.b=t1-t3} - else {rgb.r=0; rgb.g=0; rgb.b=0} - } - return {r:Math.round(rgb.r), g:Math.round(rgb.g), b:Math.round(rgb.b)}; - } - - //HSB转HEX - ,HSBToHEX = function(hsb){ - var rgb = HSBToRGB(hsb); - var hex = [ - rgb.r.toString(16) - ,rgb.g.toString(16) - ,rgb.b.toString(16) - ]; - $.each(hex, function(nr, val){ - if(val.length == 1){ - hex[nr] = '0' + val; - } - }); - return hex.join(''); - } - - //转化成所需rgb格式 - ,RGBSTo = function(rgbs){ - var regexp = /[0-9]{1,3}/g; - var re = rgbs.match(regexp) || []; - return {r:re[0], g:re[1], b:re[2]}; - } - - ,$win = $(window) - ,$doc = $(document) - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++colorpicker.index; - that.config = $.extend({}, that.config, colorpicker.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - color: '' //默认颜色,默认没有 - ,size: null //选择器大小 - ,alpha: false //是否开启透明度 - ,format: 'hex' //颜色显示/输入格式,可选 rgb,hex - ,predefine: false //预定义颜色是否开启 - ,colors: [ //默认预定义颜色列表 - '#009688', '#5FB878', '#1E9FFF', '#FF5722', '#FFB800', '#01AAED', '#999', '#c00', '#ff8c00','#ffd700' - ,'#90ee90', '#00ced1', '#1e90ff', '#c71585', 'rgb(0, 186, 189)', 'rgb(255, 120, 0)', 'rgb(250, 212, 0)', '#393D49', 'rgba(0,0,0,.5)', 'rgba(255, 69, 0, 0.68)', 'rgba(144, 240, 144, 0.5)', 'rgba(31, 147, 255, 0.73)' - ] - }; - - //初始颜色选择框 - Class.prototype.render = function(){ - var that = this - ,options = that.config - - //颜色选择框对象 - ,elemColorBox = $(['
' - ,'' - ,'' - ,'' - ,'' - ,'' - ,'
'].join('')) - - //初始化颜色选择框 - var othis = $(options.elem); - options.size && elemColorBox.addClass('layui-colorpicker-'+ options.size); //初始化颜色选择框尺寸 - - //插入颜色选择框 - othis.addClass('layui-inline').html( - that.elemColorBox = elemColorBox - ); - - //获取背景色值 - that.color = that.elemColorBox.find('.'+ PICKER_TRIG_SPAN)[0].style.background; - - //相关事件 - that.events(); - }; - - //渲染颜色选择器 - Class.prototype.renderPicker = function(){ - var that = this - ,options = that.config - ,elemColorBox = that.elemColorBox[0] - - //颜色选择器对象 - ,elemPicker = that.elemPicker = $(['
' - //颜色面板 - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - - //透明度条块 - ,'
' - ,'
' - ,'
' - ,'
' - ,'
' - - //预设颜色列表 - ,function(){ - if(options.predefine){ - var list = ['
']; - layui.each(options.colors, function(i, v){ - list.push(['
' - ,'
' - ,'
'].join('')); - }); - list.push('
'); - return list.join(''); - } else { - return ''; - } - }() - - //底部表单元素区域 - ,'
' - ,'
' - ,'' - ,'
' - ,'
' - ,'' - ,'' - ,'' - ,'
'].join('')) - - ,elemColorBoxSpan = that.elemColorBox.find('.' + PICKER_TRIG_SPAN)[0]; - - //如果当前点击的颜色盒子已经存在选择器,则关闭 - if($(ELEM_MAIN)[0] && $(ELEM_MAIN).data('index') == that.index){ - that.removePicker(Class.thisElemInd); - } else { //插入颜色选择器 - that.removePicker(Class.thisElemInd); - $('body').append(elemPicker); - } - - Class.thisElemInd = that.index; //记录最新打开的选择器索引 - Class.thisColor = elemColorBox.style.background //记录最新打开的选择器颜色选中值 - - that.position(); - that.pickerEvents(); - }; - - //颜色选择器移除 - Class.prototype.removePicker = function(index){ - var that = this - ,options = that.config; - $('#layui-colorpicker'+ (index || that.index)).remove(); - return that; - }; - - //定位算法 - Class.prototype.position = function(){ - var that = this - ,options = that.config; - lay.position(that.bindElem || that.elemColorBox[0], that.elemPicker[0], { - position: options.position - ,align: 'center' - }); - return that; - }; - - //颜色选择器赋值 - Class.prototype.val = function(){ - var that = this - ,options = that.config - - ,elemColorBox = that.elemColorBox.find('.' + PICKER_TRIG_SPAN) - ,elemPickerInput = that.elemPicker.find('.' + PICKER_INPUT) - ,e = elemColorBox[0] - ,bgcolor = e.style.backgroundColor; - - //判断是否有背景颜色 - if(bgcolor){ - - //转化成hsb格式 - var hsb = RGBToHSB(RGBSTo(bgcolor)) - ,type = elemColorBox.attr('lay-type'); - - //同步滑块的位置及颜色选择器的选择 - that.select(hsb.h, hsb.s, hsb.b); - - //如果格式要求为rgb - if(type === 'torgb'){ - elemPickerInput.find('input').val(bgcolor); - }; - - //如果格式要求为rgba - if(type === 'rgba'){ - var rgb = RGBSTo(bgcolor); - - //如果开启透明度而没有设置,则给默认值 - if((bgcolor.match(/[0-9]{1,3}/g) || []).length == 3){ - elemPickerInput.find('input').val('rgba('+ rgb.r +', '+ rgb.g +', '+ rgb.b +', 1)'); - that.elemPicker.find('.'+ PICKER_ALPHA_SLIDER).css("left", 280); - } else { - elemPickerInput.find('input').val(bgcolor); - var left = bgcolor.slice(bgcolor.lastIndexOf(",") + 1, bgcolor.length - 1) * 280; - that.elemPicker.find('.'+ PICKER_ALPHA_SLIDER).css("left", left); - }; - - //设置span背景色 - that.elemPicker.find('.'+ PICKER_ALPHA_BG)[0].style.background = 'linear-gradient(to right, rgba('+ rgb.r +', '+ rgb.g +', '+ rgb.b +', 0), rgb('+ rgb.r +', '+ rgb.g +', '+ rgb.b +'))'; - }; - - }else{ - //如果没有背景颜色则默认到最初始的状态 - that.select(0,100,100); - elemPickerInput.find('input').val(""); - that.elemPicker.find('.'+ PICKER_ALPHA_BG)[0].style.background = ''; - that.elemPicker.find('.'+ PICKER_ALPHA_SLIDER).css("left", 280); - } - }; - - //颜色选择器滑动 / 点击 - Class.prototype.side = function(){ - var that = this - ,options = that.config - - ,span = that.elemColorBox.find('.' + PICKER_TRIG_SPAN) - ,type = span.attr('lay-type') - - ,side = that.elemPicker.find('.' + PICKER_SIDE) - ,slider = that.elemPicker.find('.' + PICKER_SIDE_SLIDER) - ,basis = that.elemPicker.find('.' + PICKER_BASIS) - ,choose = that.elemPicker.find('.' + PICKER_BASIS_CUR) - ,alphacolor = that.elemPicker.find('.' + PICKER_ALPHA_BG) - ,alphaslider = that.elemPicker.find('.' + PICKER_ALPHA_SLIDER) - - ,_h = slider[0].offsetTop/180*360 - ,_b = 100 - (choose[0].offsetTop + 3)/180*100 - ,_s = (choose[0].offsetLeft + 3)/260*100 - ,_a = Math.round(alphaslider[0].offsetLeft/280*100)/100 - - ,i = that.elemColorBox.find('.' + PICKER_TRIG_I) - ,pre = that.elemPicker.find('.layui-colorpicker-pre').children('div') - - ,change = function(x,y,z,a){ - that.select(x, y, z); - var rgb = HSBToRGB({h:x, s:y, b:z}); - i.addClass(ICON_PICKER_DOWN).removeClass(ICON_PICKER_CLOSE); - span[0].style.background = 'rgb('+ rgb.r +', '+ rgb.g +', '+ rgb.b +')'; - - if(type === 'torgb'){ - that.elemPicker.find('.' + PICKER_INPUT).find('input').val('rgb('+ rgb.r +', '+ rgb.g +', '+ rgb.b +')'); - }; - - if(type === 'rgba'){ - var left = 0; - left = a * 280; - alphaslider.css("left", left); - that.elemPicker.find('.' + PICKER_INPUT).find('input').val('rgba('+ rgb.r +', '+ rgb.g +', '+ rgb.b +', '+ a +')'); - span[0].style.background = 'rgba('+ rgb.r +', '+ rgb.g +', '+ rgb.b +', '+ a +')'; - alphacolor[0].style.background = 'linear-gradient(to right, rgba('+ rgb.r +', '+ rgb.g +', '+ rgb.b +', 0), rgb('+ rgb.r +', '+ rgb.g +', '+ rgb.b +'))' - }; - - //回调更改的颜色 - options.change && options.change(that.elemPicker.find('.' + PICKER_INPUT).find('input').val()); - } - - //拖拽元素 - ,elemMove = $(['
'].join('')) - ,createMoveElem = function(call){ - $('#LAY-colorpicker-moving')[0] || $('body').append(elemMove); - elemMove.on('mousemove', call); - elemMove.on('mouseup', function(){ - elemMove.remove(); - }).on('mouseleave', function(){ - elemMove.remove(); - }); - }; - - //右侧主色选择 - slider.on('mousedown', function(e){ - var oldtop = this.offsetTop - ,oldy = e.clientY; - var move = function(e){ - var top = oldtop + (e.clientY - oldy) - ,maxh = side[0].offsetHeight; - if(top < 0)top = 0; - if(top > maxh)top = maxh; - var h = top/180*360; - _h = h; - change(h, _s, _b, _a); - e.preventDefault(); - }; - - createMoveElem(move); - //layui.stope(e); - e.preventDefault(); - }); - - side.on('click', function(e){ - var top = e.clientY - $(this).offset().top; - if(top < 0)top = 0; - if(top > this.offsetHeight)top = this.offsetHeight; - var h = top/180*360; - _h = h; - change(h, _s, _b, _a); - e.preventDefault(); - }); - - //中间小圆点颜色选择 - choose.on('mousedown', function(e){ - var oldtop = this.offsetTop - ,oldleft = this.offsetLeft - ,oldy = e.clientY - ,oldx = e.clientX; - var move = function(e){ - var top = oldtop + (e.clientY - oldy) - ,left = oldleft + (e.clientX - oldx) - ,maxh = basis[0].offsetHeight - 3 - ,maxw = basis[0].offsetWidth - 3; - if(top < -3)top = -3; - if(top > maxh)top = maxh; - if(left < -3)left = -3; - if(left > maxw)left = maxw; - var s = (left + 3)/260*100 - ,b = 100 - (top + 3)/180*100; - _b = b; - _s = s; - change(_h, s, b, _a); - e.preventDefault(); - }; - layui.stope(e); - createMoveElem(move); - e.preventDefault(); - }); - - basis.on('mousedown', function(e){ - var top = e.clientY - $(this).offset().top - 3 + $win.scrollTop() - ,left = e.clientX - $(this).offset().left - 3 + $win.scrollLeft() - if(top < -3)top = -3; - if(top > this.offsetHeight - 3)top = this.offsetHeight - 3; - if(left < -3)left = -3; - if(left > this.offsetWidth - 3)left = this.offsetWidth - 3; - var s = (left + 3)/260*100 - ,b = 100 - (top + 3)/180*100; - _b = b; - _s = s; - change(_h, s, b, _a); - layui.stope(e); - e.preventDefault(); - choose.trigger(e, 'mousedown'); - }); - - //底部透明度选择 - alphaslider.on('mousedown', function(e){ - var oldleft = this.offsetLeft - ,oldx = e.clientX; - var move = function(e){ - var left = oldleft + (e.clientX - oldx) - ,maxw = alphacolor[0].offsetWidth; - if(left < 0)left = 0; - if(left > maxw)left = maxw; - var a = Math.round(left /280*100) /100; - _a = a; - change(_h, _s, _b, a); - e.preventDefault(); - }; - - createMoveElem(move); - e.preventDefault(); - }); - alphacolor.on('click', function(e){ - var left = e.clientX - $(this).offset().left - if(left < 0)left = 0; - if(left > this.offsetWidth)left = this.offsetWidth; - var a = Math.round(left /280*100) /100; - _a = a; - change(_h, _s, _b, a); - e.preventDefault(); - }); - - //预定义颜色选择 - pre.each(function(){ - $(this).on('click', function(){ - $(this).parent('.layui-colorpicker-pre').addClass('selected').siblings().removeClass('selected'); - var color = this.style.backgroundColor - ,hsb = RGBToHSB(RGBSTo(color)) - ,a = color.slice(color.lastIndexOf(",") + 1, color.length - 1),left; - _h = hsb.h; - _s = hsb.s; - _b = hsb.b; - if((color.match(/[0-9]{1,3}/g) || []).length == 3) a = 1; - _a = a; - left = a * 280; - change(hsb.h, hsb.s, hsb.b, a); - }) - }); - }; - - //颜色选择器hsb转换 - Class.prototype.select = function(h, s, b, type){ - var that = this - ,options = that.config - ,hex = HSBToHEX({h:h, s:100, b:100}) - ,color = HSBToHEX({h:h, s:s, b:b}) - ,sidetop = h/360*180 - ,top = 180 - b/100*180 - 3 - ,left = s/100*260 - 3; - - that.elemPicker.find('.' + PICKER_SIDE_SLIDER).css("top", sidetop); //滑块的top - that.elemPicker.find('.' + PICKER_BASIS)[0].style.background = '#' + hex; //颜色选择器的背景 - - //选择器的top left - that.elemPicker.find('.' + PICKER_BASIS_CUR).css({ - "top": top - ,"left": left - }); - - if(type === 'change') return; - - //选中的颜色 - that.elemPicker.find('.' + PICKER_INPUT).find('input').val('#' + color); - }; - - Class.prototype.pickerEvents = function(){ - var that = this - ,options = that.config - - ,elemColorBoxSpan = that.elemColorBox.find('.' + PICKER_TRIG_SPAN) //颜色盒子 - ,elemPickerInput = that.elemPicker.find('.' + PICKER_INPUT + ' input') //颜色选择器表单 - - ,pickerEvents = { - //清空 - clear: function(othis){ - elemColorBoxSpan[0].style.background =''; - that.elemColorBox.find('.' + PICKER_TRIG_I).removeClass(ICON_PICKER_DOWN).addClass(ICON_PICKER_CLOSE); - that.color = ''; - - options.done && options.done(''); - that.removePicker(); - } - - //确认 - ,confirm: function(othis, change){ - var value = elemPickerInput.val() - ,colorValue = value - ,hsb = {}; - - if(value.indexOf(',') > -1){ - hsb = RGBToHSB(RGBSTo(value)); - that.select(hsb.h, hsb.s, hsb.b); - elemColorBoxSpan[0].style.background = (colorValue = '#' + HSBToHEX(hsb)); - - if((value.match(/[0-9]{1,3}/g) || []).length > 3 && elemColorBoxSpan.attr('lay-type') === 'rgba'){ - var left = value.slice(value.lastIndexOf(",") + 1, value.length - 1) * 280; - that.elemPicker.find('.' + PICKER_ALPHA_SLIDER).css("left", left); - elemColorBoxSpan[0].style.background = value; - colorValue = value; - }; - } else { - hsb = HEXToHSB(value); - elemColorBoxSpan[0].style.background = (colorValue = '#' + HSBToHEX(hsb)); - that.elemColorBox.find('.' + PICKER_TRIG_I).removeClass(ICON_PICKER_CLOSE).addClass(ICON_PICKER_DOWN); - }; - - if(change === 'change'){ - that.select(hsb.h, hsb.s, hsb.b, change); - options.change && options.change(colorValue); - return; - } - that.color = value; - - options.done && options.done(value); - that.removePicker(); - } - }; - - //选择器面板点击事件 - that.elemPicker.on('click', '*[colorpicker-events]', function(){ - var othis = $(this) - ,attrEvent = othis.attr('colorpicker-events'); - pickerEvents[attrEvent] && pickerEvents[attrEvent].call(this, othis); - }); - - //输入框事件 - elemPickerInput.on('keyup', function(e){ - var othis = $(this) - pickerEvents.confirm.call(this, othis, e.keyCode === 13 ? null : 'change'); - }); - } - - //颜色选择器输入 - Class.prototype.events = function(){ - var that = this - ,options = that.config - - ,elemColorBoxSpan = that.elemColorBox.find('.' + PICKER_TRIG_SPAN) - - //弹出颜色选择器 - that.elemColorBox.on('click' , function(){ - that.renderPicker(); - if($(ELEM_MAIN)[0]){ - that.val(); - that.side(); - }; - }); - - if(!options.elem[0] || that.elemColorBox[0].eventHandler) return; - - //绑定关闭控件事件 - $doc.on(clickOrMousedown, function(e){ - //如果点击的元素是颜色框 - if($(e.target).hasClass(ELEM) - || $(e.target).parents('.'+ELEM)[0] - ) return; - - //如果点击的元素是选择器 - if($(e.target).hasClass(ELEM_MAIN.replace(/\./g, '')) - || $(e.target).parents(ELEM_MAIN)[0] - ) return; - - if(!that.elemPicker) return; - - if(that.color){ - var hsb = RGBToHSB(RGBSTo(that.color)); - that.select(hsb.h, hsb.s, hsb.b); - } else { - that.elemColorBox.find('.' + PICKER_TRIG_I).removeClass(ICON_PICKER_DOWN).addClass(ICON_PICKER_CLOSE); - } - elemColorBoxSpan[0].style.background = that.color || ''; - - that.removePicker(); - }); - - //自适应定位 - $win.on('resize', function(){ - if(!that.elemPicker || !$(ELEM_MAIN)[0]){ - return false; - } - that.position(); - }); - - that.elemColorBox[0].eventHandler = true; - }; - - //核心入口 - colorpicker.render = function(options){ - var inst = new Class(options); - return thisColorPicker.call(inst); - }; - - exports(MOD_NAME, colorpicker); -}); diff --git a/static/Layui/v2.6.8/modules/demo.js b/static/Layui/v2.6.8/modules/demo.js deleted file mode 100644 index 5058d67..0000000 --- a/static/Layui/v2.6.8/modules/demo.js +++ /dev/null @@ -1,135 +0,0 @@ - -/*! - * MODULE_DEMO_NAME 模块组件通用结构 - * MIT Licensed - */ - -layui.define([''], function(exports){ - "use strict"; - - var $ = layui.$ - - //模块名 - ,MOD_NAME = 'MODULE_DEMO_NAME' - ,MOD_INDEX = 'layui_'+ MOD_NAME +'_index' //模块索引名 - - //外部接口 - ,MODULE_DEMO_NAME = { - config: {} - ,index: layui[MOD_NAME] ? (layui[MOD_NAME].index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisModule = function(){ - var that = this - ,options = that.config - ,id = options.id || that.index; - - thisModule.that[id] = that; //记录当前实例对象 - - return { - config: options - //重置实例 - ,reload: function(options){ - that.reload.call(that, options); - } - } - } - - //字符常量 - ,STR_ELEM = 'layui-MODULE_DEMO_NAME', STR_HIDE = 'layui-hide', STR_DISABLED = 'layui-disabled', STR_NONE = 'layui-none' - - //主模板 - ,TPL_MAIN = [''].join('') - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++MODULE_DEMO_NAME.index; - that.config = $.extend({}, that.config, MODULE_DEMO_NAME.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - - }; - - //重载实例 - Class.prototype.reload = function(options){ - var that = this; - - //防止数组深度合并 - layui.each(options, function(key, item){ - if(layui._typeof(item) === 'array') delete that.config[key]; - }); - - that.config = $.extend(true, {}, that.config, options); - that.render(); - }; - - //渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - //解析模板 - var thisElem = that.elem = $(laytpl(TPL_MAIN).render({ - data: options - ,index: that.index //索引 - })); - - var othis = options.elem = $(options.elem); - if(!othis[0]) return; - - - - that.events(); //事件 - }; - - //事件 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - - - }; - - //记录所有实例 - thisModule.that = {}; //记录所有实例对象 - - //获取当前实例对象 - thisModule.getThis = function(id){ - var that = thisModule.that[id]; - if(!that) hint.error(id ? (MOD_NAME +' instance with ID \''+ id +'\' not found') : 'ID argument required'); - return that - }; - - //重载实例 - MODULE_DEMO_NAME.reload = function(id, options){ - var that = thisModule.that[id]; - that.reload(options); - - return thisModule.call(that); - }; - - //核心入口 - MODULE_DEMO_NAME.render = function(options){ - var inst = new Class(options); - return thisModule.call(inst); - }; - - exports(MOD_NAME, MODULE_DEMO_NAME); -}); diff --git a/static/Layui/v2.6.8/modules/dropdown.js b/static/Layui/v2.6.8/modules/dropdown.js deleted file mode 100644 index 5dae4b5..0000000 --- a/static/Layui/v2.6.8/modules/dropdown.js +++ /dev/null @@ -1,528 +0,0 @@ -/** - - @Name:dropdown 下拉菜单组件 - @License:MIT - - */ - -layui.define(['jquery', 'laytpl', 'lay'], function(exports){ - "use strict"; - - var $ = layui.$ - ,laytpl = layui.laytpl - ,hint = layui.hint() - ,device = layui.device() - ,clickOrMousedown = (device.mobile ? 'click' : 'mousedown') - - //模块名 - ,MOD_NAME = 'dropdown' - ,MOD_INDEX = 'layui_'+ MOD_NAME +'_index' //模块索引名 - - //外部接口 - ,dropdown = { - config: {} - ,index: layui[MOD_NAME] ? (layui[MOD_NAME].index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisModule = function(){ - var that = this - ,options = that.config - ,id = options.id; - - thisModule.that[id] = that; //记录当前实例对象 - - return { - config: options - //重置实例 - ,reload: function(options){ - that.reload.call(that, options); - } - } - } - - //字符常量 - ,STR_ELEM = 'layui-dropdown', STR_HIDE = 'layui-hide', STR_DISABLED = 'layui-disabled', STR_NONE = 'layui-none' - ,STR_ITEM_UP = 'layui-menu-item-up', STR_ITEM_DOWN = 'layui-menu-item-down', STR_MENU_TITLE = 'layui-menu-body-title', STR_ITEM_GROUP = 'layui-menu-item-group', STR_ITEM_PARENT = 'layui-menu-item-parent', STR_ITEM_DIV = 'layui-menu-item-divider', STR_ITEM_CHECKED = 'layui-menu-item-checked', STR_ITEM_CHECKED2 = 'layui-menu-item-checked2', STR_MENU_PANEL = 'layui-menu-body-panel', STR_MENU_PANEL_L = 'layui-menu-body-panel-left' - - ,STR_GROUP_TITLE = '.'+ STR_ITEM_GROUP + '>.'+ STR_MENU_TITLE - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++dropdown.index; - that.config = $.extend({}, that.config, dropdown.config, options); - that.init(); - }; - - //默认配置 - Class.prototype.config = { - trigger: 'click' //事件类型 - ,content: '' //自定义菜单内容 - ,className: '' //自定义样式类名 - ,style: '' //设置面板 style 属性 - ,show: false //是否初始即显示菜单面板 - ,isAllowSpread: true //是否允许菜单组展开收缩 - ,isSpreadItem: true //是否初始展开子菜单 - ,data: [] //菜单数据结构 - ,delay: 300 //延迟关闭的毫秒数,若 trigger 为 hover 时才生效 - }; - - //重载实例 - Class.prototype.reload = function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - that.init(true); - }; - - //初始化准备 - Class.prototype.init = function(rerender){ - var that = this - ,options = that.config - ,elem = options.elem = $(options.elem); - - //若 elem 非唯一 - if(elem.length > 1){ - layui.each(elem, function(){ - dropdown.render($.extend({}, options, { - elem: this - })); - }); - return that; - } - - //若重复执行 render,则视为 reload 处理 - if(!rerender && elem[0] && elem.data(MOD_INDEX)){; - var newThat = thisModule.getThis(elem.data(MOD_INDEX)); - if(!newThat) return; - - return newThat.reload(options); - }; - - //初始化 id 参数 - options.id = ('id' in options) ? options.id : that.index; - - if(options.show) that.render(rerender); //初始即显示 - that.events(); //事件 - }; - - //渲染 - Class.prototype.render = function(rerender){ - var that = this - ,options = that.config - ,elemBody = $('body') - - //默认菜单内容 - ,getDefaultView = function(){ - var elemUl = $(''); - if(options.data.length > 0 ){ - eachItemView(elemUl, options.data) - } else { - elemUl.html('
  • no menu
  • '); - } - return elemUl; - } - - //遍历菜单项 - ,eachItemView = function(views, data){ - //var views = []; - layui.each(data, function(index, item){ - //是否存在子级 - var isChild = item.child && item.child.length > 0 - ,isSpreadItem = ('isSpreadItem' in item) ? item.isSpreadItem : options.isSpreadItem - ,title = item.templet - ? laytpl(item.templet).render(item) - : (options.templet ? laytpl(options.templet).render(item) : item.title) - - //初始类型 - ,type = function(){ - if(isChild){ - item.type = item.type || 'parent'; - } - if(item.type){ - return ({ - group: 'group' - ,parent: 'parent' - ,'-': '-' - })[item.type] || 'parent'; - } - return ''; - }(); - - if(type !== '-' && (!item.title && !item.id && !isChild)) return; - - //列表元素 - var viewLi = $(['' - - //标题区 - ,function(){ - //是否超文本 - var viewText = ('href' in item) ? ( - ''+ title +'' - ) : title; - - //是否存在子级 - if(isChild){ - return '
    '+ viewText + function(){ - if(type === 'parent'){ - return ''; - } else if(type === 'group' && options.isAllowSpread){ - return ''; - } else { - return ''; - } - }() +'
    ' - - } - return '
    '+ viewText +'
    '; - }() - ,''].join('')); - - viewLi.data('item', item); - - //子级区 - if(isChild){ - var elemPanel = $('
    ') - ,elemUl = $('
      '); - - if(type === 'parent'){ - elemPanel.append(eachItemView(elemUl, item.child)); - viewLi.append(elemPanel); - } else { - viewLi.append(eachItemView(elemUl, item.child)); - } - } - - views.append(viewLi); - }); - return views; - } - - //主模板 - ,TPL_MAIN = ['
      ' - ,'
      '].join(''); - - //如果是右键事件,则每次触发事件时,将允许重新渲染 - if(options.trigger === 'contextmenu' || lay.isTopElem(options.elem[0])) rerender = true; - - //判断是否已经打开了下拉菜单面板 - if(!rerender && options.elem.data(MOD_INDEX +'_opened')) return; - - //记录模板对象 - that.elemView = $(TPL_MAIN); - that.elemView.append(options.content || getDefaultView()); - - //初始化某些属性 - if(options.className) that.elemView.addClass(options.className); - if(options.style) that.elemView.attr('style', options.style); - - - //记录当前执行的实例索引 - dropdown.thisId = options.id; - - //插入视图 - that.remove(); //移除非当前绑定元素的面板 - elemBody.append(that.elemView); - options.elem.data(MOD_INDEX +'_opened', true); - - //坐标定位 - that.position(); - thisModule.prevElem = that.elemView; //记录当前打开的元素,以便在下次关闭 - thisModule.prevElem.data('prevElem', options.elem); //将当前绑定的元素,记录在打开元素的 data 对象中 - - //阻止全局事件 - that.elemView.find('.layui-menu').on(clickOrMousedown, function(e){ - layui.stope(e); - }); - - //触发菜单列表事件 - that.elemView.find('.layui-menu li').on('click', function(e){ - var othis = $(this) - ,data = othis.data('item') || {} - ,isChild = data.child && data.child.length > 0; - - if(!isChild && data.type !== '-'){ - that.remove(); - typeof options.click === 'function' && options.click(data, othis); - } - }); - - //触发菜单组展开收缩 - that.elemView.find(STR_GROUP_TITLE).on('click', function(e){ - var othis = $(this) - ,elemGroup = othis.parent() - ,data = elemGroup.data('item') || {} - - if(data.type === 'group' && options.isAllowSpread){ - thisModule.spread(elemGroup); - } - }); - - //如果是鼠标移入事件,则鼠标移出时自动关闭 - if(options.trigger === 'mouseenter'){ - that.elemView.on('mouseenter', function(){ - clearTimeout(thisModule.timer); - }).on('mouseleave', function(){ - that.delayRemove(); - }); - } - - }; - - //位置定位 - Class.prototype.position = function(obj){ - var that = this - ,options = that.config; - - lay.position(options.elem[0], that.elemView[0], { - position: options.position - ,e: that.e - ,clickType: options.trigger === 'contextmenu' ? 'right' : null - ,align: options.align || null - }); - }; - - //删除视图 - Class.prototype.remove = function(){ - var that = this - ,options = that.config - ,elemPrev = thisModule.prevElem; - - //若存在已打开的面板元素,则移除 - if(elemPrev){ - elemPrev.data('prevElem') && ( - elemPrev.data('prevElem').data(MOD_INDEX +'_opened', false) - ); - elemPrev.remove(); - } - }; - - //延迟删除视图 - Class.prototype.delayRemove = function(){ - var that = this - ,options = that.config; - clearTimeout(thisModule.timer); - - thisModule.timer = setTimeout(function(){ - that.remove(); - }, options.delay); - }; - - //事件 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - - //如果传入 hover,则解析为 mouseenter - if(options.trigger === 'hover') options.trigger = 'mouseenter'; - - //解除上一个事件 - if(that.prevElem) that.prevElem.off(options.trigger, that.prevElemCallback); - - //记录被绑定的元素及回调 - that.prevElem = options.elem; - that.prevElemCallback = function(e){ - clearTimeout(thisModule.timer); - that.e = e; - that.render(); - e.preventDefault(); - - //组件打开完毕的时间 - typeof options.ready === 'function' && options.ready(that.elemView, options.elem, that.e.target); - }; - - //触发元素事件 - options.elem.on(options.trigger, that.prevElemCallback); - - //如果是鼠标移入事件 - if(options.trigger === 'mouseenter'){ - //直行鼠标移出事件 - options.elem.on('mouseleave', function(){ - that.delayRemove(); - }); - } - }; - - //记录所有实例 - thisModule.that = {}; //记录所有实例对象 - - //获取当前实例对象 - thisModule.getThis = function(id){ - var that = thisModule.that[id]; - if(!that) hint.error(id ? (MOD_NAME +' instance with ID \''+ id +'\' not found') : 'ID argument required'); - return that; - }; - - //设置菜单组展开和收缩状态 - thisModule.spread = function(othis){ - //菜单组展开和收缩 - var elemIcon = othis.children('.'+ STR_MENU_TITLE).find('.layui-icon'); - if(othis.hasClass(STR_ITEM_UP)){ - othis.removeClass(STR_ITEM_UP).addClass(STR_ITEM_DOWN); - elemIcon.removeClass('layui-icon-down').addClass('layui-icon-up'); - } else { - othis.removeClass(STR_ITEM_DOWN).addClass(STR_ITEM_UP); - elemIcon.removeClass('layui-icon-up').addClass('layui-icon-down') - } - }; - - //全局事件 - ;!function(){ - var _WIN = $(window) - ,_DOC = $(document); - - //自适应定位 - _WIN.on('resize', function(){ - if(!dropdown.thisId) return; - var that = thisModule.getThis(dropdown.thisId); - if(!that) return; - - if(!that.elemView[0] || !$('.'+ STR_ELEM)[0]){ - return false; - } - - var options = that.config; - - if(options.trigger === 'contextmenu'){ - that.remove(); - } else { - that.position(); - } - }); - - - - //点击任意处关闭 - _DOC.on(clickOrMousedown, function(e){ - if(!dropdown.thisId) return; - var that = thisModule.getThis(dropdown.thisId) - if(!that) return; - - var options = that.config; - - //如果触发的是绑定的元素,或者属于绑定元素的子元素,则不关闭 - //满足条件:当前绑定的元素不是 body document,或者不是鼠标右键事件 - if(!(lay.isTopElem(options.elem[0]) || options.trigger === 'contextmenu')){ - if( - e.target === options.elem[0] || - options.elem.find(e.target)[0] || - e.target === that.elemView[0] || - (that.elemView && that.elemView.find(e.target)[0]) - ) return; - } - - that.remove(); - }); - - //基础菜单的静态元素事件 - var ELEM_LI = '.layui-menu:not(.layui-dropdown-menu) li'; - _DOC.on('click', ELEM_LI, function(e){ - var othis = $(this) - ,parent = othis.parents('.layui-menu').eq(0) - ,isChild = othis.hasClass(STR_ITEM_GROUP) || othis.hasClass(STR_ITEM_PARENT) - ,filter = parent.attr('lay-filter') || parent.attr('id') - ,options = lay.options(this); - - //非触发元素 - if(othis.hasClass(STR_ITEM_DIV)) return; - - //非菜单组 - if(!isChild){ - //选中 - parent.find('.'+ STR_ITEM_CHECKED).removeClass(STR_ITEM_CHECKED); //清除选中样式 - parent.find('.'+ STR_ITEM_CHECKED2).removeClass(STR_ITEM_CHECKED2); //清除父级菜单选中样式 - othis.addClass(STR_ITEM_CHECKED); //添加选中样式 - othis.parents('.'+ STR_ITEM_PARENT).addClass(STR_ITEM_CHECKED2); //添加父级菜单选中样式 - - //触发事件 - layui.event.call(this, MOD_NAME, 'click('+ filter +')', options); - } - }); - - //基础菜单的展开收缩事件 - _DOC.on('click', (ELEM_LI + STR_GROUP_TITLE), function(e){ - var othis = $(this) - ,elemGroup = othis.parents('.'+ STR_ITEM_GROUP +':eq(0)') - ,options = lay.options(elemGroup[0]); - - if(('isAllowSpread' in options) ? options.isAllowSpread : true){ - thisModule.spread(elemGroup); - }; - }); - - //判断子级菜单是否超出屏幕 - var ELEM_LI_PAR = '.layui-menu .'+ STR_ITEM_PARENT - _DOC.on('mouseenter', ELEM_LI_PAR, function(e){ - var othis = $(this) - ,elemPanel = othis.find('.'+ STR_MENU_PANEL); - - if(!elemPanel[0]) return; - var rect = elemPanel[0].getBoundingClientRect(); - - //是否超出右侧屏幕 - if(rect.right > _WIN.width()){ - elemPanel.addClass(STR_MENU_PANEL_L); - //不允许超出左侧屏幕 - rect = elemPanel[0].getBoundingClientRect(); - if(rect.left < 0){ - elemPanel.removeClass(STR_MENU_PANEL_L); - } - } - - //是否超出底部屏幕 - if(rect.bottom > _WIN.height()){ - elemPanel.eq(0).css('margin-top', -(rect.bottom - _WIN.height())); - }; - }).on('mouseleave', ELEM_LI_PAR, function(e){ - var othis = $(this) - ,elemPanel = othis.children('.'+ STR_MENU_PANEL); - - elemPanel.removeClass(STR_MENU_PANEL_L); - elemPanel.css('margin-top', 0); - }); - - }(); - - //重载实例 - dropdown.reload = function(id, options){ - var that = thisModule.getThis(id); - if(!that) return this; - - that.reload(options); - return thisModule.call(that); - }; - - //核心入口 - dropdown.render = function(options){ - var inst = new Class(options); - return thisModule.call(inst); - }; - - exports(MOD_NAME, dropdown); -}); diff --git a/static/Layui/v2.6.8/modules/element.js b/static/Layui/v2.6.8/modules/element.js deleted file mode 100644 index b5742e2..0000000 --- a/static/Layui/v2.6.8/modules/element.js +++ /dev/null @@ -1,510 +0,0 @@ - -/*! - * element 常用元素操作 - * MIT Licensed - */ - -layui.define('jquery', function(exports){ - "use strict"; - - var $ = layui.$ - ,hint = layui.hint() - ,device = layui.device() - - ,MOD_NAME = 'element', THIS = 'layui-this', SHOW = 'layui-show' - - ,Element = function(){ - this.config = {}; - }; - - //全局设置 - Element.prototype.set = function(options){ - var that = this; - $.extend(true, that.config, options); - return that; - }; - - //表单事件 - Element.prototype.on = function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - }; - - //外部Tab新增 - Element.prototype.tabAdd = function(filter, options){ - var TITLE = '.layui-tab-title' - ,tabElem = $('.layui-tab[lay-filter='+ filter +']') - ,titElem = tabElem.children(TITLE) - ,barElem = titElem.children('.layui-tab-bar') - ,contElem = tabElem.children('.layui-tab-content') - ,li = ' 0) layAttr.unshift(''); //向前插,预留空格 - return layAttr.join(' '); - }() +'>'+ (options.title || 'unnaming') +''; - - barElem[0] ? barElem.before(li) : titElem.append(li); - contElem.append('
      '+ (options.content || '') +'
      '); - call.hideTabMore(true); - call.tabAuto(); - return this; - }; - - //外部Tab删除 - Element.prototype.tabDelete = function(filter, layid){ - var TITLE = '.layui-tab-title' - ,tabElem = $('.layui-tab[lay-filter='+ filter +']') - ,titElem = tabElem.children(TITLE) - ,liElem = titElem.find('>li[lay-id="'+ layid +'"]'); - call.tabDelete(null, liElem); - return this; - }; - - //外部Tab切换 - Element.prototype.tabChange = function(filter, layid){ - var TITLE = '.layui-tab-title' - ,tabElem = $('.layui-tab[lay-filter='+ filter +']') - ,titElem = tabElem.children(TITLE) - ,liElem = titElem.find('>li[lay-id="'+ layid +'"]'); - call.tabClick.call(liElem[0], null, null, liElem); - return this; - }; - - //自定义Tab选项卡 - Element.prototype.tab = function(options){ - options = options || {}; - dom.on('click', options.headerElem, function(e){ - var index = $(this).index(); - call.tabClick.call(this, e, index, null, options); - }); - }; - - - //动态改变进度条 - Element.prototype.progress = function(filter, percent){ - var ELEM = 'layui-progress' - ,elem = $('.'+ ELEM +'[lay-filter='+ filter +']') - ,elemBar = elem.find('.'+ ELEM +'-bar') - ,text = elemBar.find('.'+ ELEM +'-text'); - elemBar.css('width', percent).attr('lay-percent', percent); - text.text(percent); - return this; - }; - - var NAV_ELEM = '.layui-nav', NAV_ITEM = 'layui-nav-item', NAV_BAR = 'layui-nav-bar' - ,NAV_TREE = 'layui-nav-tree', NAV_CHILD = 'layui-nav-child', NAV_CHILD_C = 'layui-nav-child-c' - ,NAV_MORE = 'layui-nav-more', NAV_DOWN = 'layui-icon-down', NAV_ANIM = 'layui-anim layui-anim-upbit' - - //基础事件体 - ,call = { - //Tab 点击 - tabClick: function(e, index, liElem, options){ - options = options || {}; - var othis = liElem || $(this) - ,index = index || othis.parent().children('li').index(othis) - ,parents = options.headerElem ? othis.parent() : othis.parents('.layui-tab').eq(0) - ,item = options.bodyElem ? $(options.bodyElem) : parents.children('.layui-tab-content').children('.layui-tab-item') - ,elemA = othis.find('a') - ,isJump = elemA.attr('href') !== 'javascript:;' && elemA.attr('target') === '_blank' //是否存在跳转 - ,unselect = typeof othis.attr('lay-unselect') === 'string' //是否禁用选中 - ,filter = parents.attr('lay-filter'); - - //执行切换 - if(!(isJump || unselect)){ - othis.addClass(THIS).siblings().removeClass(THIS); - item.eq(index).addClass(SHOW).siblings().removeClass(SHOW); - } - - layui.event.call(this, MOD_NAME, 'tab('+ filter +')', { - elem: parents - ,index: index - }); - } - - //Tab删除 - ,tabDelete: function(e, othis){ - var li = othis || $(this).parent(), index = li.index() - ,parents = li.parents('.layui-tab').eq(0) - ,item = parents.children('.layui-tab-content').children('.layui-tab-item') - ,filter = parents.attr('lay-filter'); - - if(li.hasClass(THIS)){ - if(li.next()[0]){ - call.tabClick.call(li.next()[0], null, index + 1); - } else if(li.prev()[0]){ - call.tabClick.call(li.prev()[0], null, index - 1); - } - } - - li.remove(); - item.eq(index).remove(); - setTimeout(function(){ - call.tabAuto(); - }, 50); - - layui.event.call(this, MOD_NAME, 'tabDelete('+ filter +')', { - elem: parents - ,index: index - }); - } - - //Tab自适应 - ,tabAuto: function(){ - var SCROLL = 'layui-tab-scroll', MORE = 'layui-tab-more', BAR = 'layui-tab-bar' - ,CLOSE = 'layui-tab-close', that = this; - - $('.layui-tab').each(function(){ - var othis = $(this) - ,title = othis.children('.layui-tab-title') - ,item = othis.children('.layui-tab-content').children('.layui-tab-item') - ,STOPE = 'lay-stope="tabmore"' - ,span = $(''); - - if(that === window && device.ie != 8){ - call.hideTabMore(true) - } - - //允许关闭 - if(othis.attr('lay-allowClose')){ - title.find('li').each(function(){ - var li = $(this); - if(!li.find('.'+CLOSE)[0]){ - var close = $(''); - close.on('click', call.tabDelete); - li.append(close); - } - }); - } - - if(typeof othis.attr('lay-unauto') === 'string') return; - - //响应式 - if(title.prop('scrollWidth') > title.outerWidth()+1){ - if(title.find('.'+BAR)[0]) return; - title.append(span); - othis.attr('overflow', ''); - span.on('click', function(e){ - title[this.title ? 'removeClass' : 'addClass'](MORE); - this.title = this.title ? '' : '收缩'; - }); - } else { - title.find('.'+BAR).remove(); - othis.removeAttr('overflow'); - } - }); - } - //隐藏更多Tab - ,hideTabMore: function(e){ - var tsbTitle = $('.layui-tab-title'); - if(e === true || $(e.target).attr('lay-stope') !== 'tabmore'){ - tsbTitle.removeClass('layui-tab-more'); - tsbTitle.find('.layui-tab-bar').attr('title',''); - } - } - - //点击一级菜单 - /* - ,clickThis: function(){ - var othis = $(this), parents = othis.parents(NAV_ELEM) - ,filter = parents.attr('lay-filter') - ,elemA = othis.find('a') - ,unselect = typeof othis.attr('lay-unselect') === 'string'; - - if(othis.find('.'+NAV_CHILD)[0]) return; - - if(!(elemA.attr('href') !== 'javascript:;' && elemA.attr('target') === '_blank') && !unselect){ - parents.find('.'+THIS).removeClass(THIS); - othis.addClass(THIS); - } - - layui.event.call(this, MOD_NAME, 'nav('+ filter +')', othis); - } - ) - */ - - //点击菜单 - a标签触发 - ,clickThis: function(){ - var othis = $(this) - ,parents = othis.parents(NAV_ELEM) - ,filter = parents.attr('lay-filter') - ,parent = othis.parent() - ,child = othis.siblings('.'+NAV_CHILD) - ,unselect = typeof parent.attr('lay-unselect') === 'string'; //是否禁用选中 - - if(!(othis.attr('href') !== 'javascript:;' && othis.attr('target') === '_blank') && !unselect){ - if(!child[0]){ - parents.find('.'+THIS).removeClass(THIS); - parent.addClass(THIS); - } - } - - //如果是垂直菜单 - if(parents.hasClass(NAV_TREE)){ - child.removeClass(NAV_ANIM); - - //如果有子菜单,则展开 - if(child[0]){ - parent[child.css('display') === 'none' ? 'addClass': 'removeClass'](NAV_ITEM+'ed'); - if(parents.attr('lay-shrink') === 'all'){ - parent.siblings().removeClass(NAV_ITEM + 'ed'); - } - } - } - - layui.event.call(this, MOD_NAME, 'nav('+ filter +')', othis); - } - - //点击子菜单选中 - /* - ,clickChild: function(){ - var othis = $(this), parents = othis.parents(NAV_ELEM) - ,filter = parents.attr('lay-filter'); - parents.find('.'+THIS).removeClass(THIS); - othis.addClass(THIS); - layui.event.call(this, MOD_NAME, 'nav('+ filter +')', othis); - } - */ - - //折叠面板 - ,collapse: function(){ - var othis = $(this), icon = othis.find('.layui-colla-icon') - ,elemCont = othis.siblings('.layui-colla-content') - ,parents = othis.parents('.layui-collapse').eq(0) - ,filter = parents.attr('lay-filter') - ,isNone = elemCont.css('display') === 'none'; - - //是否手风琴 - if(typeof parents.attr('lay-accordion') === 'string'){ - var show = parents.children('.layui-colla-item').children('.'+SHOW); - show.siblings('.layui-colla-title').children('.layui-colla-icon').html(''); - show.removeClass(SHOW); - } - - elemCont[isNone ? 'addClass' : 'removeClass'](SHOW); - icon.html(isNone ? '' : ''); - - layui.event.call(this, MOD_NAME, 'collapse('+ filter +')', { - title: othis - ,content: elemCont - ,show: isNone - }); - } - }; - - //初始化元素操作 - Element.prototype.init = function(type, filter){ - var that = this, elemFilter = function(){ - return filter ? ('[lay-filter="' + filter +'"]') : ''; - }(), items = { - - //Tab选项卡 - tab: function(){ - call.tabAuto.call({}); - } - - //导航菜单 - ,nav: function(){ - var TIME = 200, timer = {}, timerMore = {}, timeEnd = {}, NAV_TITLE = 'layui-nav-title' - - //滑块跟随 - ,follow = function(bar, nav, index){ - var othis = $(this), child = othis.find('.'+NAV_CHILD); - if(nav.hasClass(NAV_TREE)){ - //无子菜单时跟随 - if(!child[0]){ - var thisA = othis.children('.'+ NAV_TITLE); - bar.css({ - top: othis.offset().top - nav.offset().top - ,height: (thisA[0] ? thisA : othis).outerHeight() - ,opacity: 1 - }); - } - } else { - child.addClass(NAV_ANIM); - - //若居中对齐 - if(child.hasClass(NAV_CHILD_C)) child.css({ - left: -(child.outerWidth() - othis.width())/2 - }); - - //滑块定位 - if(child[0]){ //若有子菜单,则滑块消失 - bar.css({ - left: bar.position().left + bar.width()/2 - ,width: 0 - ,opacity: 0 - }); - } else { //bar 跟随 - bar.css({ - left: othis.position().left + parseFloat(othis.css('marginLeft')) - ,top: othis.position().top + othis.height() - bar.height() - }); - } - - //渐显滑块并适配宽度 - timer[index] = setTimeout(function(){ - bar.css({ - width: child[0] ? 0 : othis.width() - ,opacity: child[0] ? 0 : 1 - }); - }, device.ie && device.ie < 10 ? 0 : TIME); - - //显示子菜单 - clearTimeout(timeEnd[index]); - if(child.css('display') === 'block'){ - clearTimeout(timerMore[index]); - } - timerMore[index] = setTimeout(function(){ - child.addClass(SHOW); - othis.find('.'+NAV_MORE).addClass(NAV_MORE+'d'); - }, 300); - } - }; - - //遍历导航 - $(NAV_ELEM + elemFilter).each(function(index){ - var othis = $(this) - ,bar = $('') - ,itemElem = othis.find('.'+NAV_ITEM); - - //hover 滑动效果 - if(!othis.find('.'+NAV_BAR)[0]){ - othis.append(bar); - (othis.hasClass(NAV_TREE) - ? itemElem.find('dd,>.'+ NAV_TITLE) - : itemElem).on('mouseenter', function(){ - follow.call(this, bar, othis, index); - }).on('mouseleave', function(){ //鼠标移出 - //是否为垂直导航 - if(othis.hasClass(NAV_TREE)){ - bar.css({ - height: 0 - ,opacity: 0 - }); - } else { - //隐藏子菜单 - clearTimeout(timerMore[index]); - timerMore[index] = setTimeout(function(){ - othis.find('.'+NAV_CHILD).removeClass(SHOW); - othis.find('.'+NAV_MORE).removeClass(NAV_MORE+'d'); - }, 300); - } - }); - othis.on('mouseleave', function(){ - clearTimeout(timer[index]) - timeEnd[index] = setTimeout(function(){ - if(!othis.hasClass(NAV_TREE)){ - bar.css({ - width: 0 - ,left: bar.position().left + bar.width()/2 - ,opacity: 0 - }); - } - }, TIME); - }); - } - - //展开子菜单 - itemElem.find('a').each(function(){ - var thisA = $(this) - ,parent = thisA.parent() - ,child = thisA.siblings('.'+NAV_CHILD); - - //输出小箭头 - if(child[0] && !thisA.children('.'+NAV_MORE)[0]){ - thisA.append(''); - } - - thisA.off('click', call.clickThis).on('click', call.clickThis); //点击菜单 - }); - }); - } - - //面包屑 - ,breadcrumb: function(){ - var ELEM = '.layui-breadcrumb'; - - $(ELEM + elemFilter).each(function(){ - var othis = $(this) - ,ATTE_SPR = 'lay-separator' - ,separator = othis.attr(ATTE_SPR) || '/' - ,aNode = othis.find('a'); - if(aNode.next('span['+ ATTE_SPR +']')[0]) return; - aNode.each(function(index){ - if(index === aNode.length - 1) return; - $(this).after(''+ separator +''); - }); - othis.css('visibility', 'visible'); - }); - } - - //进度条 - ,progress: function(){ - var ELEM = 'layui-progress'; - $('.' + ELEM + elemFilter).each(function(){ - var othis = $(this) - ,elemBar = othis.find('.layui-progress-bar') - ,percent = elemBar.attr('lay-percent'); - - elemBar.css('width', function(){ - return /^.+\/.+$/.test(percent) - ? (new Function('return '+ percent)() * 100) + '%' - : percent; - }()); - - if(othis.attr('lay-showPercent')){ - setTimeout(function(){ - elemBar.html(''+ percent +''); - },350); - } - }); - } - - //折叠面板 - ,collapse: function(){ - var ELEM = 'layui-collapse'; - - $('.' + ELEM + elemFilter).each(function(){ - var elemItem = $(this).find('.layui-colla-item') - elemItem.each(function(){ - var othis = $(this) - ,elemTitle = othis.find('.layui-colla-title') - ,elemCont = othis.find('.layui-colla-content') - ,isNone = elemCont.css('display') === 'none'; - - //初始状态 - elemTitle.find('.layui-colla-icon').remove(); - elemTitle.append(''+ (isNone ? '' : '') +''); - - //点击标题 - elemTitle.off('click', call.collapse).on('click', call.collapse); - }); - - }); - } - }; - - return items[type] ? items[type]() : layui.each(items, function(index, item){ - item(); - }); - }; - - Element.prototype.render = Element.prototype.init; - - var element = new Element(), dom = $(document); - - $(function(){ - element.render(); - }); - - var TITLE = '.layui-tab-title li'; - dom.on('click', TITLE, call.tabClick); //Tab切换 - dom.on('click', call.hideTabMore); //隐藏展开的Tab - $(window).on('resize', call.tabAuto); //自适应 - - exports(MOD_NAME, element); -}); - diff --git a/static/Layui/v2.6.8/modules/flow.js b/static/Layui/v2.6.8/modules/flow.js deleted file mode 100644 index a4d12ef..0000000 --- a/static/Layui/v2.6.8/modules/flow.js +++ /dev/null @@ -1,179 +0,0 @@ -/** - - @Name flow 流加载组件 - @License:MIT - - */ - - -layui.define('jquery', function(exports){ - "use strict"; - - var $ = layui.$, Flow = function(options){} - ,ELEM_MORE = 'layui-flow-more' - ,ELEM_LOAD = ''; - - //主方法 - Flow.prototype.load = function(options){ - var that = this, page = 0, lock, isOver, lazyimg, timer; - options = options || {}; - - var elem = $(options.elem); if(!elem[0]) return; - var scrollElem = $(options.scrollElem || document); //滚动条所在元素 - var mb = options.mb || 50; //与底部的临界距离 - var isAuto = 'isAuto' in options ? options.isAuto : true; //是否自动滚动加载 - var end = options.end || '没有更多了'; //“末页”显示文案 - - //滚动条所在元素是否为document - var notDocment = options.scrollElem && options.scrollElem !== document; - - //加载更多 - var ELEM_TEXT = '加载更多' - ,more = $(''); - - if(!elem.find('.layui-flow-more')[0]){ - elem.append(more); - } - - //加载下一个元素 - var next = function(html, over){ - html = $(html); - more.before(html); - over = over == 0 ? true : null; - over ? more.html(end) : more.find('a').html(ELEM_TEXT); - isOver = over; - lock = null; - lazyimg && lazyimg(); - }; - - //触发请求 - var done = function(){ - lock = true; - more.find('a').html(ELEM_LOAD); - typeof options.done === 'function' && options.done(++page, next); - }; - - done(); - - //不自动滚动加载 - more.find('a').on('click', function(){ - var othis = $(this); - if(isOver) return; - lock || done(); - }); - - //如果允许图片懒加载 - if(options.isLazyimg){ - var lazyimg = that.lazyimg({ - elem: options.elem + ' img' - ,scrollElem: options.scrollElem - }); - } - - if(!isAuto) return that; - - scrollElem.on('scroll', function(){ - var othis = $(this), top = othis.scrollTop(); - - if(timer) clearTimeout(timer); - if(isOver || !elem.width()) return; //如果已经结束,或者元素处于隐藏状态,则不执行滚动加载 - - timer = setTimeout(function(){ - //计算滚动所在容器的可视高度 - var height = notDocment ? othis.height() : $(window).height(); - - //计算滚动所在容器的实际高度 - var scrollHeight = notDocment - ? othis.prop('scrollHeight') - : document.documentElement.scrollHeight; - - //临界点 - if(scrollHeight - top - height <= mb){ - lock || done(); - } - }, 100); - }); - - return that; - }; - - //图片懒加载 - Flow.prototype.lazyimg = function(options){ - var that = this, index = 0, haveScroll; - options = options || {}; - - var scrollElem = $(options.scrollElem || document); //滚动条所在元素 - var elem = options.elem || 'img'; - - //滚动条所在元素是否为document - var notDocment = options.scrollElem && options.scrollElem !== document; - - //显示图片 - var show = function(item, height){ - var start = scrollElem.scrollTop(), end = start + height; - var elemTop = notDocment ? function(){ - return item.offset().top - scrollElem.offset().top + start; - }() : item.offset().top; - - /* 始终只加载在当前屏范围内的图片 */ - if(elemTop >= start && elemTop <= end){ - if(item.attr('lay-src')){ - var src = item.attr('lay-src'); - layui.img(src, function(){ - var next = that.lazyimg.elem.eq(index); - item.attr('src', src).removeAttr('lay-src'); - - /* 当前图片加载就绪后,检测下一个图片是否在当前屏 */ - next[0] && render(next); - index++; - }, function(){ - var next = that.lazyimg.elem.eq(index); - item.removeAttr('lay-src'); - }); - } - } - }, render = function(othis, scroll){ - - //计算滚动所在容器的可视高度 - var height = notDocment ? (scroll||scrollElem).height() : $(window).height(); - var start = scrollElem.scrollTop(), end = start + height; - - that.lazyimg.elem = $(elem); - - if(othis){ - show(othis, height); - } else { - //计算未加载过的图片 - for(var i = 0; i < that.lazyimg.elem.length; i++){ - var item = that.lazyimg.elem.eq(i), elemTop = notDocment ? function(){ - return item.offset().top - scrollElem.offset().top + start; - }() : item.offset().top; - - show(item, height); - index = i; - - //如果图片的top坐标,超出了当前屏,则终止后续图片的遍历 - if(elemTop > end) break; - } - } - }; - - render(); - - if(!haveScroll){ - var timer; - scrollElem.on('scroll', function(){ - var othis = $(this); - if(timer) clearTimeout(timer) - timer = setTimeout(function(){ - render(null, othis); - }, 50); - }); - haveScroll = true; - } - return render; - }; - - //暴露接口 - exports('flow', new Flow()); -}); diff --git a/static/Layui/v2.6.8/modules/form.js b/static/Layui/v2.6.8/modules/form.js deleted file mode 100644 index 1bd40c1..0000000 --- a/static/Layui/v2.6.8/modules/form.js +++ /dev/null @@ -1,742 +0,0 @@ - -/*! - * form 表单组件 - * MIT Licensed - */ - -layui.define('layer', function(exports){ - "use strict"; - - var $ = layui.$ - ,layer = layui.layer - ,hint = layui.hint() - ,device = layui.device() - - ,MOD_NAME = 'form', ELEM = '.layui-form', THIS = 'layui-this' - ,SHOW = 'layui-show', HIDE = 'layui-hide', DISABLED = 'layui-disabled' - - ,Form = function(){ - this.config = { - verify: { - required: [ - /[\S]+/ - ,'必填项不能为空' - ] - ,phone: [ - /^1\d{10}$/ - ,'请输入正确的手机号' - ] - ,email: [ - /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/ - ,'邮箱格式不正确' - ] - ,url: [ - /^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/ - ,'链接格式不正确' - ] - ,number: function(value){ - if(!value || isNaN(value)) return '只能填写数字' - } - ,date: [ - /^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/ - ,'日期格式不正确' - ] - ,identity: [ - /(^\d{15}$)|(^\d{17}(x|X|\d)$)/ - ,'请输入正确的身份证号' - ] - } - ,autocomplete: null //全局 autocomplete 状态。null 表示不干预 - }; - }; - - //全局设置 - Form.prototype.set = function(options){ - var that = this; - $.extend(true, that.config, options); - return that; - }; - - //验证规则设定 - Form.prototype.verify = function(settings){ - var that = this; - $.extend(true, that.config.verify, settings); - return that; - }; - - //表单事件 - Form.prototype.on = function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - }; - - //赋值/取值 - Form.prototype.val = function(filter, object){ - var that = this - ,formElem = $(ELEM + '[lay-filter="' + filter +'"]'); - - //遍历 - formElem.each(function(index, item){ - var itemForm = $(this); - - //赋值 - layui.each(object, function(key, value){ - var itemElem = itemForm.find('[name="'+ key +'"]') - ,type; - - //如果对应的表单不存在,则不执行 - if(!itemElem[0]) return; - type = itemElem[0].type; - - //如果为复选框 - if(type === 'checkbox'){ - itemElem[0].checked = value; - } else if(type === 'radio') { //如果为单选框 - itemElem.each(function(){ - if(this.value == value ){ - this.checked = true - } - }); - } else { //其它类型的表单 - itemElem.val(value); - } - }); - }); - - form.render(null, filter); - - //返回值 - return that.getValue(filter); - }; - - //取值 - Form.prototype.getValue = function(filter, itemForm){ - itemForm = itemForm || $(ELEM + '[lay-filter="' + filter +'"]').eq(0); - - var nameIndex = {} //数组 name 索引 - ,field = {} - ,fieldElem = itemForm.find('input,select,textarea') //获取所有表单域 - - layui.each(fieldElem, function(_, item){ - var othis = $(this) - ,init_name; //初始 name - - item.name = (item.name || '').replace(/^\s*|\s*&/, ''); - if(!item.name) return; - - //用于支持数组 name - if(/^.*\[\]$/.test(item.name)){ - var key = item.name.match(/^(.*)\[\]$/g)[0]; - nameIndex[key] = nameIndex[key] | 0; - init_name = item.name.replace(/^(.*)\[\]$/, '$1['+ (nameIndex[key]++) +']'); - } - - if(/^checkbox|radio$/.test(item.type) && !item.checked) return; //复选框和单选框未选中,不记录字段 - field[init_name || item.name] = item.value; - }); - - return field; - }; - - //表单控件渲染 - Form.prototype.render = function(type, filter){ - var that = this - ,options = that.config - ,elemForm = $(ELEM + function(){ - return filter ? ('[lay-filter="' + filter +'"]') : ''; - }()) - ,items = { - //输入框 - input: function(){ - var inputs = elemForm.find('input,textarea'); - - //初始化全局的 autocomplete - options.autocomplete && inputs.attr('autocomplete', options.autocomplete); - } - - //下拉选择框 - ,select: function(){ - var TIPS = '请选择', CLASS = 'layui-form-select', TITLE = 'layui-select-title' - ,NONE = 'layui-select-none', initValue = '', thatInput - ,selects = elemForm.find('select') - - //隐藏 select - ,hide = function(e, clear){ - if(!$(e.target).parent().hasClass(TITLE) || clear){ - $('.'+CLASS).removeClass(CLASS+'ed ' + CLASS+'up'); - thatInput && initValue && thatInput.val(initValue); - } - thatInput = null; - } - - //各种事件 - ,events = function(reElem, disabled, isSearch){ - var select = $(this) - ,title = reElem.find('.' + TITLE) - ,input = title.find('input') - ,dl = reElem.find('dl') - ,dds = dl.children('dd') - ,index = this.selectedIndex //当前选中的索引 - ,nearElem; //select 组件当前选中的附近元素,用于辅助快捷键功能 - - if(disabled) return; - - //展开下拉 - var showDown = function(){ - var top = reElem.offset().top + reElem.outerHeight() + 5 - $win.scrollTop() - ,dlHeight = dl.outerHeight(); - - index = select[0].selectedIndex; //获取最新的 selectedIndex - reElem.addClass(CLASS+'ed'); - dds.removeClass(HIDE); - nearElem = null; - - //初始选中样式 - dds.eq(index).addClass(THIS).siblings().removeClass(THIS); - - //上下定位识别 - if(top + dlHeight > $win.height() && top >= dlHeight){ - reElem.addClass(CLASS + 'up'); - } - - followScroll(); - } - - //隐藏下拉 - ,hideDown = function(choose){ - reElem.removeClass(CLASS+'ed ' + CLASS+'up'); - input.blur(); - nearElem = null; - - if(choose) return; - - notOption(input.val(), function(none){ - var selectedIndex = select[0].selectedIndex; - - //未查询到相关值 - if(none){ - initValue = $(select[0].options[selectedIndex]).html(); //重新获得初始选中值 - - //如果是第一项,且文本值等于 placeholder,则清空初始值 - if(selectedIndex === 0 && initValue === input.attr('placeholder')){ - initValue = ''; - }; - - //如果有选中值,则将输入框纠正为该值。否则清空输入框 - input.val(initValue || ''); - } - }); - } - - //定位下拉滚动条 - ,followScroll = function(){ - var thisDd = dl.children('dd.'+ THIS); - - if(!thisDd[0]) return; - - var posTop = thisDd.position().top - ,dlHeight = dl.height() - ,ddHeight = thisDd.height(); - - //若选中元素在滚动条不可见底部 - if(posTop > dlHeight){ - dl.scrollTop(posTop + dl.scrollTop() - dlHeight + ddHeight - 5); - } - - //若选择玄素在滚动条不可见顶部 - if(posTop < 0){ - dl.scrollTop(posTop + dl.scrollTop() - 5); - } - }; - - //点击标题区域 - title.on('click', function(e){ - reElem.hasClass(CLASS+'ed') ? ( - hideDown() - ) : ( - hide(e, true), - showDown() - ); - dl.find('.'+NONE).remove(); - }); - - //点击箭头获取焦点 - title.find('.layui-edge').on('click', function(){ - input.focus(); - }); - - //select 中 input 键盘事件 - input.on('keyup', function(e){ //键盘松开 - var keyCode = e.keyCode; - - //Tab键展开 - if(keyCode === 9){ - showDown(); - } - }).on('keydown', function(e){ //键盘按下 - var keyCode = e.keyCode; - - //Tab键隐藏 - if(keyCode === 9){ - hideDown(); - } - - //标注 dd 的选中状态 - var setThisDd = function(prevNext, thisElem1){ - var nearDd, cacheNearElem - e.preventDefault(); - - //得到当前队列元素 - var thisElem = function(){ - var thisDd = dl.children('dd.'+ THIS); - - //如果是搜索状态,且按 Down 键,且当前可视 dd 元素在选中元素之前, - //则将当前可视 dd 元素的上一个元素作为虚拟的当前选中元素,以保证递归不中断 - if(dl.children('dd.'+ HIDE)[0] && prevNext === 'next'){ - var showDd = dl.children('dd:not(.'+ HIDE +',.'+ DISABLED +')') - ,firstIndex = showDd.eq(0).index(); - if(firstIndex >=0 && firstIndex < thisDd.index() && !showDd.hasClass(THIS)){ - return showDd.eq(0).prev()[0] ? showDd.eq(0).prev() : dl.children(':last'); - } - } - - if(thisElem1 && thisElem1[0]){ - return thisElem1; - } - if(nearElem && nearElem[0]){ - return nearElem; - } - - return thisDd; - //return dds.eq(index); - }(); - - cacheNearElem = thisElem[prevNext](); //当前元素的附近元素 - nearDd = thisElem[prevNext]('dd:not(.'+ HIDE +')'); //当前可视元素的 dd 元素 - - //如果附近的元素不存在,则停止执行,并清空 nearElem - if(!cacheNearElem[0]) return nearElem = null; - - //记录附近的元素,让其成为下一个当前元素 - nearElem = thisElem[prevNext](); - - //如果附近不是 dd ,或者附近的 dd 元素是禁用状态,则进入递归查找 - if((!nearDd[0] || nearDd.hasClass(DISABLED)) && nearElem[0]){ - return setThisDd(prevNext, nearElem); - } - - nearDd.addClass(THIS).siblings().removeClass(THIS); //标注样式 - followScroll(); //定位滚动条 - }; - - if(keyCode === 38) setThisDd('prev'); //Up 键 - if(keyCode === 40) setThisDd('next'); //Down 键 - - //Enter 键 - if(keyCode === 13){ - e.preventDefault(); - dl.children('dd.'+THIS).trigger('click'); - } - }); - - //检测值是否不属于 select 项 - var notOption = function(value, callback, origin){ - var num = 0; - layui.each(dds, function(){ - var othis = $(this) - ,text = othis.text() - ,not = text.indexOf(value) === -1; - if(value === '' || (origin === 'blur') ? value !== text : not) num++; - origin === 'keyup' && othis[not ? 'addClass' : 'removeClass'](HIDE); - }); - var none = num === dds.length; - return callback(none), none; - }; - - //搜索匹配 - var search = function(e){ - var value = this.value, keyCode = e.keyCode; - - if(keyCode === 9 || keyCode === 13 - || keyCode === 37 || keyCode === 38 - || keyCode === 39 || keyCode === 40 - ){ - return false; - } - - notOption(value, function(none){ - if(none){ - dl.find('.'+NONE)[0] || dl.append('

      无匹配项

      '); - } else { - dl.find('.'+NONE).remove(); - } - }, 'keyup'); - - if(value === ''){ - dl.find('.'+NONE).remove(); - } - - followScroll(); //定位滚动条 - }; - - if(isSearch){ - input.on('keyup', search).on('blur', function(e){ - var selectedIndex = select[0].selectedIndex; - - thatInput = input; //当前的 select 中的 input 元素 - initValue = $(select[0].options[selectedIndex]).html(); //重新获得初始选中值 - - //如果是第一项,且文本值等于 placeholder,则清空初始值 - if(selectedIndex === 0 && initValue === input.attr('placeholder')){ - initValue = ''; - }; - - setTimeout(function(){ - notOption(input.val(), function(none){ - initValue || input.val(''); //none && !initValue - }, 'blur'); - }, 200); - }); - } - - //选择 - dds.on('click', function(){ - var othis = $(this), value = othis.attr('lay-value'); - var filter = select.attr('lay-filter'); //获取过滤器 - - if(othis.hasClass(DISABLED)) return false; - - if(othis.hasClass('layui-select-tips')){ - input.val(''); - } else { - input.val(othis.text()); - othis.addClass(THIS); - } - - othis.siblings().removeClass(THIS); - select.val(value).removeClass('layui-form-danger') - layui.event.call(this, MOD_NAME, 'select('+ filter +')', { - elem: select[0] - ,value: value - ,othis: reElem - }); - - hideDown(true); - return false; - }); - - reElem.find('dl>dt').on('click', function(e){ - return false; - }); - - $(document).off('click', hide).on('click', hide); //点击其它元素关闭 select - } - - selects.each(function(index, select){ - var othis = $(this) - ,hasRender = othis.next('.'+CLASS) - ,disabled = this.disabled - ,value = select.value - ,selected = $(select.options[select.selectedIndex]) //获取当前选中项 - ,optionsFirst = select.options[0]; - - if(typeof othis.attr('lay-ignore') === 'string') return othis.show(); - - var isSearch = typeof othis.attr('lay-search') === 'string' - ,placeholder = optionsFirst ? ( - optionsFirst.value ? TIPS : (optionsFirst.innerHTML || TIPS) - ) : TIPS; - - //替代元素 - var reElem = $(['
      ' - ,'
      ' - ,('') //禁用状态 - ,'
      ' - ,'
      ' - ,function(options){ - var arr = []; - layui.each(options, function(index, item){ - if(index === 0 && !item.value){ - arr.push('
      '+ $.trim(item.innerHTML || TIPS) +'
      '); - } else if(item.tagName.toLowerCase() === 'optgroup'){ - arr.push('
      '+ item.label +'
      '); - } else { - arr.push('
      '+ $.trim(item.innerHTML) +'
      '); - } - }); - arr.length === 0 && arr.push('
      没有选项
      '); - return arr.join(''); - }(othis.find('*')) +'
      ' - ,'
      '].join('')); - - hasRender[0] && hasRender.remove(); //如果已经渲染,则Rerender - othis.after(reElem); - events.call(this, reElem, disabled, isSearch); - }); - } - - //复选框/开关 - ,checkbox: function(){ - var CLASS = { - checkbox: ['layui-form-checkbox', 'layui-form-checked', 'checkbox'] - ,_switch: ['layui-form-switch', 'layui-form-onswitch', 'switch'] - } - ,checks = elemForm.find('input[type=checkbox]') - - ,events = function(reElem, RE_CLASS){ - var check = $(this); - - //勾选 - reElem.on('click', function(){ - var filter = check.attr('lay-filter') //获取过滤器 - ,text = (check.attr('lay-text')||'').split('|'); - - if(check[0].disabled) return; - - check[0].checked ? ( - check[0].checked = false - ,reElem.removeClass(RE_CLASS[1]).find('em').text(text[1]) - ) : ( - check[0].checked = true - ,reElem.addClass(RE_CLASS[1]).find('em').text(text[0]) - ); - - layui.event.call(check[0], MOD_NAME, RE_CLASS[2]+'('+ filter +')', { - elem: check[0] - ,value: check[0].value - ,othis: reElem - }); - }); - } - - checks.each(function(index, check){ - var othis = $(this), skin = othis.attr('lay-skin') - ,text = (othis.attr('lay-text') || '').split('|'), disabled = this.disabled; - if(skin === 'switch') skin = '_'+skin; - var RE_CLASS = CLASS[skin] || CLASS.checkbox; - - if(typeof othis.attr('lay-ignore') === 'string') return othis.show(); - - //替代元素 - var hasRender = othis.next('.' + RE_CLASS[0]) - ,reElem = $(['
      ' - ,function(){ //不同风格的内容 - var title = check.title.replace(/\s/g, '') - ,type = { - //复选框 - checkbox: [ - (title ? (''+ check.title +'') : '') - ,'' - ].join('') - - //开关 - ,_switch: ''+ ((check.checked ? text[0] : text[1]) || '') +'' - }; - return type[skin] || type['checkbox']; - }() - ,'
      '].join('')); - - hasRender[0] && hasRender.remove(); //如果已经渲染,则Rerender - othis.after(reElem); - events.call(this, reElem, RE_CLASS); - }); - } - - //单选框 - ,radio: function(){ - var CLASS = 'layui-form-radio', ICON = ['', ''] - ,radios = elemForm.find('input[type=radio]') - - ,events = function(reElem){ - var radio = $(this), ANIM = 'layui-anim-scaleSpring'; - - reElem.on('click', function(){ - var name = radio[0].name, forms = radio.parents(ELEM); - var filter = radio.attr('lay-filter'); //获取过滤器 - var sameRadio = forms.find('input[name='+ name.replace(/(\.|#|\[|\])/g, '\\$1') +']'); //找到相同name的兄弟 - - if(radio[0].disabled) return; - - layui.each(sameRadio, function(){ - var next = $(this).next('.'+CLASS); - this.checked = false; - next.removeClass(CLASS+'ed'); - next.find('.layui-icon').removeClass(ANIM).html(ICON[1]); - }); - - radio[0].checked = true; - reElem.addClass(CLASS+'ed'); - reElem.find('.layui-icon').addClass(ANIM).html(ICON[0]); - - layui.event.call(radio[0], MOD_NAME, 'radio('+ filter +')', { - elem: radio[0] - ,value: radio[0].value - ,othis: reElem - }); - }); - }; - - radios.each(function(index, radio){ - 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 = $(['
      ' //禁用状态 - ,''+ ICON[radio.checked ? 0 : 1] +'' - ,'
      '+ function(){ - var title = radio.title || ''; - if(typeof othis.next().attr('lay-radio') === 'string'){ - title = othis.next().html(); - //othis.next().remove(); - } - return title - }() +'
      ' - ,'
      '].join('')); - - othis.after(reElem); - events.call(this, reElem); - }); - } - }; - type ? ( - items[type] ? items[type]() : hint.error('不支持的 "'+ type + '" 表单渲染') - ) : layui.each(items, function(index, item){ - item(); - }); - return that; - }; - - //表单提交校验 - var submit = function(){ - var stop = null //验证不通过状态 - ,verify = form.config.verify //验证规则 - ,DANGER = 'layui-form-danger' //警示样式 - ,field = {} //字段集合 - ,button = $(this) //当前触发的按钮 - ,elem = button.parents(ELEM).eq(0) //当前所在表单域 - ,verifyElem = elem.find('*[lay-verify]') //获取需要校验的元素 - ,formElem = button.parents('form')[0] //获取当前所在的 form 元素,如果存在的话 - ,filter = button.attr('lay-filter'); //获取过滤器 - - - //开始校验 - layui.each(verifyElem, function(_, item){ - var othis = $(this) - ,vers = othis.attr('lay-verify').split('|') - ,verType = othis.attr('lay-verType') //提示方式 - ,value = othis.val(); - - othis.removeClass(DANGER); //移除警示样式 - - //遍历元素绑定的验证规则 - layui.each(vers, function(_, thisVer){ - var isTrue //是否命中校验 - ,errorText = '' //错误提示文本 - ,isFn = typeof verify[thisVer] === 'function'; - - //匹配验证规则 - if(verify[thisVer]){ - var isTrue = isFn ? errorText = verify[thisVer](value, item) : !verify[thisVer][0].test(value) - //是否属于美化替换后的表单元素 - ,isForm2Elem = item.tagName.toLowerCase() === 'select' || /^checkbox|radio$/.test(item.type); - - errorText = errorText || verify[thisVer][1]; - - if(thisVer === 'required'){ - errorText = othis.attr('lay-reqText') || errorText; - } - - //如果是必填项或者非空命中校验,则阻止提交,弹出提示 - if(isTrue){ - //提示层风格 - if(verType === 'tips'){ - layer.tips(errorText, function(){ - if(typeof othis.attr('lay-ignore') !== 'string'){ - if(isForm2Elem){ - return othis.next(); - } - } - return othis; - }(), {tips: 1}); - } else if(verType === 'alert') { - layer.alert(errorText, {title: '提示', shadeClose: true}); - } - //如果返回的为字符或数字,则自动弹出默认提示框;否则由 verify 方法中处理提示 - else if(/\bstring|number\b/.test(typeof errorText)){ - layer.msg(errorText, {icon: 5, shift: 6}); - } - - //非移动设备自动定位焦点 - if(!device.mobile){ - setTimeout(function(){ - (isForm2Elem ? othis.next().find('input') : item).focus(); - }, 7); - } else { //移动设备定位 - $dom.scrollTop(function(){ - try { - return (isForm2Elem ? othis.next() : othis).offset().top - 15 - } catch(e){ - return 0; - } - }()); - } - - othis.addClass(DANGER); - return stop = true; - } - } - }); - if(stop) return stop; - }); - - if(stop) return false; - - //获取当前表单值 - field = form.getValue(null, elem); - - //返回字段 - return layui.event.call(this, MOD_NAME, 'submit('+ filter +')', { - elem: this - ,form: formElem - ,field: field - }); - }; - - //自动完成渲染 - var form = new Form() - ,$dom = $(document), $win = $(window); - - $(function(){ - form.render(); - }); - - //表单reset重置渲染 - $dom.on('reset', ELEM, function(){ - var filter = $(this).attr('lay-filter'); - setTimeout(function(){ - form.render(null, filter); - }, 50); - }); - - //表单提交事件 - $dom.on('submit', ELEM, submit) - .on('click', '*[lay-submit]', submit); - - exports(MOD_NAME, form); -}); - - diff --git a/static/Layui/v2.6.8/modules/jquery.js b/static/Layui/v2.6.8/modules/jquery.js deleted file mode 100644 index 90ebefe..0000000 --- a/static/Layui/v2.6.8/modules/jquery.js +++ /dev/null @@ -1,4 +0,0 @@ -!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a){function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return n.inArray(a,b)>-1!==c})}function F(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}function J(){d.addEventListener?(d.removeEventListener("DOMContentLoaded",K),a.removeEventListener("load",K)):(d.detachEvent("onreadystatechange",K),a.detachEvent("onload",K))}function K(){(d.addEventListener||"load"===a.event.type||"complete"===d.readyState)&&(J(),n.ready())}function P(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(O,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}n.data(a,b,c)}else c=void 0}return c}function Q(a){var b;for(b in a)if(("data"!==b||!n.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function R(a,b,d,e){if(M(a)){var f,g,h=n.expando,i=a.nodeType,j=i?n.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||n.guid++:h),j[k]||(j[k]=i?{}:{toJSON:n.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=n.extend(j[k],b):j[k].data=n.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[n.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[n.camelCase(b)])):f=g,f}}function S(a,b,c){if(M(a)){var d,e,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){n.isArray(b)?b=b.concat(n.map(b,n.camelCase)):b in d?b=[b]:(b=n.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;for(;e--;)delete d[b[e]];if(c?!Q(d):!n.isEmptyObject(d))return}(c||(delete g[h].data,Q(g[h])))&&(f?n.cleanData([a],!0):l.deleteExpando||g!=g.window?delete g[h]:g[h]=void 0)}}}function X(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return n.css(a,b,"")},i=h(),j=c&&c[3]||(n.cssNumber[b]?"":"px"),k=(n.cssNumber[b]||"px"!==j&&+i)&&U.exec(n.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,n.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}function cb(a){var b=bb.split("|"),c=a.createDocumentFragment();if(c.createElement)for(;b.length;)c.createElement(b.pop());return c}function eb(a,b){var c,d,e=0,f="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||n.nodeName(d,b)?f.push(d):n.merge(f,eb(d,b));return void 0===b||b&&n.nodeName(a,b)?n.merge([a],f):f}function fb(a,b){for(var c,d=0;null!=(c=a[d]);d++)n._data(c,"globalEval",!b||n._data(b[d],"globalEval"))}function ib(a){Z.test(a.type)&&(a.defaultChecked=a.checked)}function jb(a,b,c,d,e){for(var f,g,h,i,j,k,m,o=a.length,p=cb(b),q=[],r=0;o>r;r++)if(g=a[r],g||0===g)if("object"===n.type(g))n.merge(q,g.nodeType?[g]:g);else if(gb.test(g)){for(i=i||p.appendChild(b.createElement("div")),j=($.exec(g)||["",""])[1].toLowerCase(),m=db[j]||db._default,i.innerHTML=m[1]+n.htmlPrefilter(g)+m[2],f=m[0];f--;)i=i.lastChild;if(!l.leadingWhitespace&&ab.test(g)&&q.push(b.createTextNode(ab.exec(g)[0])),!l.tbody)for(g="table"!==j||hb.test(g)?""!==m[1]||hb.test(g)?0:i:i.firstChild,f=g&&g.childNodes.length;f--;)n.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k);for(n.merge(q,i.childNodes),i.textContent="";i.firstChild;)i.removeChild(i.firstChild);i=p.lastChild}else q.push(b.createTextNode(g));for(i&&p.removeChild(i),l.appendChecked||n.grep(eb(q,"input"),ib),r=0;g=q[r++];)if(d&&n.inArray(g,d)>-1)e&&e.push(g);else if(h=n.contains(g.ownerDocument,g),i=eb(p.appendChild(g),"script"),h&&fb(i),c)for(f=0;g=i[f++];)_.test(g.type||"")&&c.push(g);return i=null,p}function pb(){return!0}function qb(){return!1}function rb(){try{return d.activeElement}catch(a){}}function sb(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)sb(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=qb;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}function Cb(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function Db(a){return a.type=(null!==n.find.attr(a,"type"))+"/"+a.type,a}function Eb(a){var b=yb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Fb(a,b){if(1===b.nodeType&&n.hasData(a)){var c,d,e,f=n._data(a),g=n._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)n.event.add(b,c,h[c][d])}g.data&&(g.data=n.extend({},g.data))}}function Gb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!l.noCloneEvent&&b[n.expando]){e=n._data(b);for(d in e.events)n.removeEvent(b,d,e.handle);b.removeAttribute(n.expando)}"script"===c&&b.text!==a.text?(Db(b).text=a.text,Eb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),l.html5Clone&&a.innerHTML&&!n.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&Z.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}function Hb(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&xb.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),Hb(f,b,c,d)});if(o&&(k=jb(b,a[0].ownerDocument,!1,a,d),e=k.firstChild,1===k.childNodes.length&&(k=e),e||d)){for(i=n.map(eb(k,"script"),Db),h=i.length;o>m;m++)g=k,m!==p&&(g=n.clone(g,!0,!0),h&&n.merge(i,eb(g,"script"))),c.call(a[m],g,m);if(h)for(j=i[i.length-1].ownerDocument,n.map(i,Eb),m=0;h>m;m++)g=i[m],_.test(g.type||"")&&!n._data(g,"globalEval")&&n.contains(j,g)&&(g.src?n._evalUrl&&n._evalUrl(g.src):n.globalEval((g.text||g.textContent||g.innerHTML||"").replace(zb,"")));k=e=null}return a}function Ib(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(eb(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&fb(eb(d,"script")),d.parentNode.removeChild(d));return a}function Lb(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function Mb(a){var b=d,c=Kb[a];return c||(c=Lb(a,b),"none"!==c&&c||(Jb=(Jb||n("' - ,'' - ,''].join('')) - - //编辑器不兼容ie8以下 - if(device.ie && device.ie < 8){ - return textArea.removeClass('layui-hide').addClass(SHOW); - } - - haveBuild[0] && (haveBuild.remove()); - - setIframe.call(that, editor, textArea[0], set) - textArea.addClass('layui-hide').after(editor); - - return that.index; - }; - - //获得编辑器中内容 - Edit.prototype.getContent = function(index){ - var iframeWin = getWin(index); - if(!iframeWin[0]) return; - return toLower(iframeWin[0].document.body.innerHTML); - }; - - //获得编辑器中纯文本内容 - Edit.prototype.getText = function(index){ - var iframeWin = getWin(index); - if(!iframeWin[0]) return; - return $(iframeWin[0].document.body).text(); - }; - /** - * 设置编辑器内容 - * @param {[type]} index 编辑器索引 - * @param {[type]} content 要设置的内容 - * @param {[type]} flag 是否追加模式 - */ - Edit.prototype.setContent = function(index, content, flag){ - var iframeWin = getWin(index); - if(!iframeWin[0]) return; - if(flag){ - $(iframeWin[0].document.body).append(content) - }else{ - $(iframeWin[0].document.body).html(content) - }; - layedit.sync(index) - }; - //将编辑器内容同步到textarea(一般用于异步提交时) - Edit.prototype.sync = function(index){ - var iframeWin = getWin(index); - if(!iframeWin[0]) return; - var textarea = $('#'+iframeWin[1].attr('textarea')); - textarea.val(toLower(iframeWin[0].document.body.innerHTML)); - }; - - //获取编辑器选中内容 - Edit.prototype.getSelection = function(index){ - var iframeWin = getWin(index); - if(!iframeWin[0]) return; - var range = Range(iframeWin[0].document); - return document.selection ? range.text : range.toString(); - }; - - //iframe初始化 - var setIframe = function(editor, textArea, set){ - var that = this, iframe = editor.find('iframe'); - - iframe.css({ - height: set.height - }).on('load', function(){ - var conts = iframe.contents() - ,iframeWin = iframe.prop('contentWindow') - ,head = conts.find('head') - ,style = $([''].join('')) - ,body = conts.find('body'); - - head.append(style); - body.attr('contenteditable', 'true').css({ - 'min-height': set.height - }).html(textArea.value||''); - - hotkey.apply(that, [iframeWin, iframe, textArea, set]); //快捷键处理 - toolActive.call(that, iframeWin, editor, set); //触发工具 - - }); - } - - //获得iframe窗口对象 - ,getWin = function(index){ - var iframe = $('#LAY_layedit_'+ index) - ,iframeWin = iframe.prop('contentWindow'); - return [iframeWin, iframe]; - } - - //IE8下将标签处理成小写 - ,toLower = function(html){ - if(device.ie == 8){ - html = html.replace(/<.+>/g, function(str){ - return str.toLowerCase(); - }); - } - return html; - } - - //快捷键处理 - ,hotkey = function(iframeWin, iframe, textArea, set){ - var iframeDOM = iframeWin.document, body = $(iframeDOM.body); - body.on('keydown', function(e){ - var keycode = e.keyCode; - //处理回车 - if(keycode === 13){ - var range = Range(iframeDOM); - var container = getContainer(range) - ,parentNode = container.parentNode; - - if(parentNode.tagName.toLowerCase() === 'pre'){ - if(e.shiftKey) return - layer.msg('请暂时用shift+enter'); - return false; - } - iframeDOM.execCommand('formatBlock', false, '

      '); - } - }); - - //给textarea同步内容 - $(textArea).parents('form').on('submit', function(){ - var html = body.html(); - //IE8下将标签处理成小写 - if(device.ie == 8){ - html = html.replace(/<.+>/g, function(str){ - return str.toLowerCase(); - }); - } - textArea.value = html; - }); - - //处理粘贴 - body.on('paste', function(e){ - iframeDOM.execCommand('formatBlock', false, '

      '); - setTimeout(function(){ - filter.call(iframeWin, body); - textArea.value = body.html(); - }, 100); - }); - } - - //标签过滤 - ,filter = function(body){ - var iframeWin = this - ,iframeDOM = iframeWin.document; - - //清除影响版面的css属性 - body.find('*[style]').each(function(){ - var textAlign = this.style.textAlign; - this.removeAttribute('style'); - $(this).css({ - 'text-align': textAlign || '' - }) - }); - - //修饰表格 - body.find('table').addClass('layui-table'); - - //移除不安全的标签 - body.find('script,link').remove(); - } - - //Range对象兼容性处理 - ,Range = function(iframeDOM){ - return iframeDOM.selection - ? iframeDOM.selection.createRange() - : iframeDOM.getSelection().getRangeAt(0); - } - - //当前Range对象的endContainer兼容性处理 - ,getContainer = function(range){ - return range.endContainer || range.parentElement().childNodes[0] - } - - //在选区插入内联元素 - ,insertInline = function(tagName, attr, range){ - var iframeDOM = this.document - ,elem = document.createElement(tagName) - for(var key in attr){ - elem.setAttribute(key, attr[key]); - } - elem.removeAttribute('text'); - - if(iframeDOM.selection){ //IE - var text = range.text || attr.text; - if(tagName === 'a' && !text) return; - if(text){ - elem.innerHTML = text; - } - range.pasteHTML($(elem).prop('outerHTML')); - range.select(); - } else { //非IE - var text = range.toString() || attr.text; - if(tagName === 'a' && !text) return; - if(text){ - elem.innerHTML = text; - } - range.deleteContents(); - range.insertNode(elem); - } - } - - //工具选中 - ,toolCheck = function(tools, othis){ - var iframeDOM = this.document - ,CHECK = 'layedit-tool-active' - ,container = getContainer(Range(iframeDOM)) - ,item = function(type){ - return tools.find('.layedit-tool-'+type) - } - - if(othis){ - othis[othis.hasClass(CHECK) ? 'removeClass' : 'addClass'](CHECK); - } - - tools.find('>i').removeClass(CHECK); - item('unlink').addClass(ABLED); - - $(container).parents().each(function(){ - var tagName = this.tagName.toLowerCase() - ,textAlign = this.style.textAlign; - - //文字 - if(tagName === 'b' || tagName === 'strong'){ - item('b').addClass(CHECK) - } - if(tagName === 'i' || tagName === 'em'){ - item('i').addClass(CHECK) - } - if(tagName === 'u'){ - item('u').addClass(CHECK) - } - if(tagName === 'strike'){ - item('d').addClass(CHECK) - } - - //对齐 - if(tagName === 'p'){ - if(textAlign === 'center'){ - item('center').addClass(CHECK); - } else if(textAlign === 'right'){ - item('right').addClass(CHECK); - } else { - item('left').addClass(CHECK); - } - } - - //超链接 - if(tagName === 'a'){ - item('link').addClass(CHECK); - item('unlink').removeClass(ABLED); - } - }); - } - - //触发工具 - ,toolActive = function(iframeWin, editor, set){ - var iframeDOM = iframeWin.document - ,body = $(iframeDOM.body) - ,toolEvent = { - //超链接 - link: function(range){ - var container = getContainer(range) - ,parentNode = $(container).parent(); - - link.call(body, { - href: parentNode.attr('href') - ,target: parentNode.attr('target') - }, function(field){ - var parent = parentNode[0]; - if(parent.tagName === 'A'){ - parent.href = field.url; - } else { - insertInline.call(iframeWin, 'a', { - target: field.target - ,href: field.url - ,text: field.url - }, range); - } - }); - } - //清除超链接 - ,unlink: function(range){ - iframeDOM.execCommand('unlink'); - } - //表情 - ,face: function(range){ - face.call(this, function(img){ - insertInline.call(iframeWin, 'img', { - src: img.src - ,alt: img.alt - }, range); - }); - } - //图片 - ,image: function(range){ - var that = this; - layui.use('upload', function(upload){ - var uploadImage = set.uploadImage || {}; - upload.render({ - url: uploadImage.url - ,method: uploadImage.type - ,elem: $(that).find('input')[0] - ,done: function(res){ - if(res.code == 0){ - res.data = res.data || {}; - insertInline.call(iframeWin, 'img', { - src: res.data.src - ,alt: res.data.title - }, range); - } else { - layer.msg(res.msg||'上传失败'); - } - } - }); - }); - } - //插入代码 - ,code: function(range){ - code.call(body, function(pre){ - insertInline.call(iframeWin, 'pre', { - text: pre.code - ,'lay-lang': pre.lang - }, range); - }); - } - //帮助 - ,help: function(){ - layer.open({ - type: 2 - ,title: '帮助' - ,area: ['600px', '380px'] - ,shadeClose: true - ,shade: 0.1 - ,skin: 'layui-layer-msg' - ,content: ['', 'no'] - }); - } - } - ,tools = editor.find('.layui-layedit-tool') - - ,click = function(){ - var othis = $(this) - ,events = othis.attr('layedit-event') - ,command = othis.attr('lay-command'); - - if(othis.hasClass(ABLED)) return; - - body.focus(); - - var range = Range(iframeDOM) - ,container = range.commonAncestorContainer - - if(command){ - iframeDOM.execCommand(command); - if(/justifyLeft|justifyCenter|justifyRight/.test(command)){ - iframeDOM.execCommand('formatBlock', false, '

      '); - } - setTimeout(function(){ - body.focus(); - }, 10); - } else { - toolEvent[events] && toolEvent[events].call(this, range); - } - toolCheck.call(iframeWin, tools, othis); - } - - ,isClick = /image/ - - tools.find('>i').on('mousedown', function(){ - var othis = $(this) - ,events = othis.attr('layedit-event'); - if(isClick.test(events)) return; - click.call(this) - }).on('click', function(){ - var othis = $(this) - ,events = othis.attr('layedit-event'); - if(!isClick.test(events)) return; - click.call(this) - }); - - //触发内容区域 - body.on('click', function(){ - toolCheck.call(iframeWin, tools); - layer.close(face.index); - }); - } - - //超链接面板 - ,link = function(options, callback){ - var body = this, index = layer.open({ - type: 1 - ,id: 'LAY_layedit_link' - ,area: '350px' - ,shade: 0.05 - ,shadeClose: true - ,moveType: 1 - ,title: '超链接' - ,skin: 'layui-layer-msg' - ,content: ['

        ' - ,'
      • ' - ,'' - ,'
        ' - ,'' - ,'
        ' - ,'
      • ' - ,'
      • ' - ,'' - ,'
        ' - ,'' - ,'' - ,'
        ' - ,'
      • ' - ,'
      • ' - ,'' - ,'' - ,'
      • ' - ,'
      '].join('') - ,success: function(layero, index){ - var eventFilter = 'submit(layedit-link-yes)'; - form.render('radio'); - layero.find('.layui-btn-primary').on('click', function(){ - layer.close(index); - body.focus(); - }); - form.on(eventFilter, function(data){ - layer.close(link.index); - callback && callback(data.field); - }); - } - }); - link.index = index; - } - - //表情面板 - ,face = function(callback){ - //表情库 - var faces = function(){ - var alt = ["[微笑]", "[嘻嘻]", "[哈哈]", "[可爱]", "[可怜]", "[挖鼻]", "[吃惊]", "[害羞]", "[挤眼]", "[闭嘴]", "[鄙视]", "[爱你]", "[泪]", "[偷笑]", "[亲亲]", "[生病]", "[太开心]", "[白眼]", "[右哼哼]", "[左哼哼]", "[嘘]", "[衰]", "[委屈]", "[吐]", "[哈欠]", "[抱抱]", "[怒]", "[疑问]", "[馋嘴]", "[拜拜]", "[思考]", "[汗]", "[困]", "[睡]", "[钱]", "[失望]", "[酷]", "[色]", "[哼]", "[鼓掌]", "[晕]", "[悲伤]", "[抓狂]", "[黑线]", "[阴险]", "[怒骂]", "[互粉]", "[心]", "[伤心]", "[猪头]", "[熊猫]", "[兔子]", "[ok]", "[耶]", "[good]", "[NO]", "[赞]", "[来]", "[弱]", "[草泥马]", "[神马]", "[囧]", "[浮云]", "[给力]", "[围观]", "[威武]", "[奥特曼]", "[礼物]", "[钟]", "[话筒]", "[蜡烛]", "[蛋糕]"], arr = {}; - layui.each(alt, function(index, item){ - arr[item] = layui.cache.dir + 'images/face/'+ index + '.gif'; - }); - return arr; - }(); - face.hide = face.hide || function(e){ - if($(e.target).attr('layedit-event') !== 'face'){ - layer.close(face.index); - } - } - return face.index = layer.tips(function(){ - var content = []; - layui.each(faces, function(key, item){ - content.push('
    • '+ key +'
    • '); - }); - return '
        ' + content.join('') + '
      '; - }(), this, { - tips: 1 - ,time: 0 - ,skin: 'layui-box layui-util-face' - ,maxWidth: 500 - ,success: function(layero, index){ - layero.css({ - marginTop: -4 - ,marginLeft: -10 - }).find('.layui-clear>li').on('click', function(){ - callback && callback({ - src: faces[this.title] - ,alt: this.title - }); - layer.close(index); - }); - $(document).off('click', face.hide).on('click', face.hide); - } - }); - } - - //插入代码面板 - ,code = function(callback){ - var body = this, index = layer.open({ - type: 1 - ,id: 'LAY_layedit_code' - ,area: '550px' - ,shade: 0.05 - ,shadeClose: true - ,moveType: 1 - ,title: '插入代码' - ,skin: 'layui-layer-msg' - ,content: ['
        ' - ,'
      • ' - ,'' - ,'
        ' - ,'' - ,'
        ' - ,'
      • ' - ,'
      • ' - ,'' - ,'
        ' - ,'' - ,'
        ' - ,'
      • ' - ,'
      • ' - ,'' - ,'' - ,'
      • ' - ,'
      '].join('') - ,success: function(layero, index){ - var eventFilter = 'submit(layedit-code-yes)'; - form.render('select'); - layero.find('.layui-btn-primary').on('click', function(){ - layer.close(index); - body.focus(); - }); - form.on(eventFilter, function(data){ - layer.close(code.index); - callback && callback(data.field); - }); - } - }); - code.index = index; - } - - //全部工具 - ,tools = { - html: '' - ,strong: '' - ,italic: '' - ,underline: '' - ,del: '' - - ,'|': '' - - ,left: '' - ,center: '' - ,right: '' - ,link: '' - ,unlink: '' - ,face: '' - ,image: '' - ,code: '' - - ,help: '' - } - - ,edit = new Edit(); - - exports(MOD_NAME, edit); -}); diff --git a/static/Layui/v2.6.8/modules/layer.js b/static/Layui/v2.6.8/modules/layer.js deleted file mode 100644 index 62b5c3d..0000000 --- a/static/Layui/v2.6.8/modules/layer.js +++ /dev/null @@ -1,1390 +0,0 @@ - -/*! - * layer - 通用 Web 弹出层组件 - * MIT Licensed - */ - -;!function(window, undefined){ -"use strict"; - -var isLayui = window.layui && layui.define, $, win, ready = { - getPath: function(){ - var jsPath = document.currentScript ? document.currentScript.src : function(){ - var js = document.scripts - ,last = js.length - 1 - ,src; - for(var i = last; i > 0; i--){ - if(js[i].readyState === 'interactive'){ - src = js[i].src; - break; - } - } - return src || js[last].src; - }() - ,GLOBAL = window.LAYUI_GLOBAL || {}; - return GLOBAL.layer_dir || jsPath.substring(0, jsPath.lastIndexOf('/') + 1); - }(), - - config: {}, end: {}, minIndex: 0, minLeft: [], - btn: ['确定', '取消'], - - //五种原始层模式 - type: ['dialog', 'page', 'iframe', 'loading', 'tips'], - - //获取节点的style属性值 - getStyle: function(node, name){ - var style = node.currentStyle ? node.currentStyle : window.getComputedStyle(node, null); - return style[style.getPropertyValue ? 'getPropertyValue' : 'getAttribute'](name); - }, - - //载入 CSS 依赖 - link: function(href, fn, cssname){ - //未设置路径,则不主动加载css - if(!layer.path) return; - - var head = document.getElementsByTagName("head")[0] - ,link = document.createElement('link'); - - if(typeof fn === 'string') cssname = fn; - - var app = (cssname || href).replace(/\.|\//g, ''); - var id = 'layuicss-'+ app - ,STAUTS_NAME = 'creating' - ,timeout = 0; - - link.rel = 'stylesheet'; - link.href = layer.path + href; - link.id = id; - - if(!document.getElementById(id)){ - head.appendChild(link); - } - - if(typeof fn !== 'function') return; - - //轮询 css 是否加载完毕 - (function poll(status) { - var delay = 100 - ,getLinkElem = document.getElementById(id); //获取动态插入的 link 元素 - - //如果轮询超过指定秒数,则视为请求文件失败或 css 文件不符合规范 - if(++timeout > 10 * 1000 / delay){ - return window.console && console.error(app +'.css: Invalid'); - }; - - //css 加载就绪 - if(parseInt(ready.getStyle(getLinkElem, 'width')) === 1989){ - //如果参数来自于初始轮询(即未加载就绪时的),则移除 link 标签状态 - if(status === STAUTS_NAME) getLinkElem.removeAttribute('lay-status'); - //如果 link 标签的状态仍为「创建中」,则继续进入轮询,直到状态改变,则执行回调 - getLinkElem.getAttribute('lay-status') === STAUTS_NAME ? setTimeout(poll, delay) : fn(); - } else { - getLinkElem.setAttribute('lay-status', STAUTS_NAME); - setTimeout(function(){ - poll(STAUTS_NAME); - }, delay); - } - - //parseInt(ready.getStyle(document.getElementById(id), 'width')) === 1989 ? fn() : setTimeout(poll, 1000); - }()); - - } -}; - -//默认内置方法。 -var layer = { - v: '3.5.1', - ie: function(){ //ie版本 - var agent = navigator.userAgent.toLowerCase(); - return (!!window.ActiveXObject || "ActiveXObject" in window) ? ( - (agent.match(/msie\s(\d+)/) || [])[1] || '11' //由于ie11并没有msie的标识 - ) : false; - }(), - index: (window.layer && window.layer.v) ? 100000 : 0, - path: ready.getPath, - config: function(options, fn){ - options = options || {}; - layer.cache = ready.config = $.extend({}, ready.config, options); - layer.path = ready.config.path || layer.path; - typeof options.extend === 'string' && (options.extend = [options.extend]); - - //如果设置了路径,则加载样式 - if(ready.config.path) layer.ready(); - - if(!options.extend) return this; - - isLayui - ? layui.addcss('modules/layer/' + options.extend) - : ready.link('theme/' + options.extend); - - return this; - }, - - //主体CSS等待事件 - ready: function(callback){ - var cssname = 'layer', ver = '' - ,path = (isLayui ? 'modules/layer/' : 'theme/') + 'default/layer.css?v='+ layer.v + ver; - isLayui ? layui.addcss(path, callback, cssname) : ready.link(path, callback, cssname); - return this; - }, - - //各种快捷引用 - alert: function(content, options, yes){ - var type = typeof options === 'function'; - if(type) yes = options; - return layer.open($.extend({ - content: content, - yes: yes - }, type ? {} : options)); - }, - - confirm: function(content, options, yes, cancel){ - var type = typeof options === 'function'; - if(type){ - cancel = yes; - yes = options; - } - return layer.open($.extend({ - content: content, - btn: ready.btn, - yes: yes, - btn2: cancel - }, type ? {} : options)); - }, - - msg: function(content, options, end){ //最常用提示层 - var type = typeof options === 'function', rskin = ready.config.skin; - var skin = (rskin ? rskin + ' ' + rskin + '-msg' : '')||'layui-layer-msg'; - var anim = doms.anim.length - 1; - if(type) end = options; - return layer.open($.extend({ - content: content, - time: 3000, - shade: false, - skin: skin, - title: false, - closeBtn: false, - btn: false, - resize: false, - end: end - }, (type && !ready.config.skin) ? { - skin: skin + ' layui-layer-hui', - anim: anim - } : function(){ - options = options || {}; - if(options.icon === -1 || options.icon === undefined && !ready.config.skin){ - options.skin = skin + ' ' + (options.skin||'layui-layer-hui'); - } - return options; - }())); - }, - - load: function(icon, options){ - return layer.open($.extend({ - type: 3, - icon: icon || 0, - resize: false, - shade: 0.01 - }, options)); - }, - - tips: function(content, follow, options){ - return layer.open($.extend({ - type: 4, - content: [content, follow], - closeBtn: false, - time: 3000, - shade: false, - resize: false, - fixed: false, - maxWidth: 260 - }, options)); - } -}; - -var Class = function(setings){ - var that = this, creat = function(){ - that.creat(); - }; - that.index = ++layer.index; - that.config.maxWidth = $(win).width() - 15*2; //初始最大宽度:当前屏幕宽,左右留 15px 边距 - that.config = $.extend({}, that.config, ready.config, setings); - document.body ? creat() : setTimeout(function(){ - creat(); - }, 30); -}; - -Class.pt = Class.prototype; - -//缓存常用字符 -var doms = ['layui-layer', '.layui-layer-title', '.layui-layer-main', '.layui-layer-dialog', 'layui-layer-iframe', 'layui-layer-content', 'layui-layer-btn', 'layui-layer-close']; -doms.anim = ['layer-anim-00', 'layer-anim-01', 'layer-anim-02', 'layer-anim-03', 'layer-anim-04', 'layer-anim-05', 'layer-anim-06']; - -doms.SHADE = 'layui-layer-shade'; -doms.MOVE = 'layui-layer-move'; - -//默认配置 -Class.pt.config = { - type: 0, - shade: 0.3, - fixed: true, - move: doms[1], - title: '信息', - offset: 'auto', - area: 'auto', - closeBtn: 1, - time: 0, //0表示不自动关闭 - zIndex: 19891014, - maxWidth: 360, - anim: 0, - isOutAnim: true, //退出动画 - minStack: true, //最小化堆叠 - icon: -1, - moveType: 1, - resize: true, - scrollbar: true, //是否允许浏览器滚动条 - tips: 2 -}; - -//容器 -Class.pt.vessel = function(conType, callback){ - var that = this, times = that.index, config = that.config; - var zIndex = config.zIndex + times, titype = typeof config.title === 'object'; - var ismax = config.maxmin && (config.type === 1 || config.type === 2); - var titleHTML = (config.title ? '
      ' - + (titype ? config.title[0] : config.title) - + '
      ' : ''); - - config.zIndex = zIndex; - callback([ - //遮罩 - config.shade ? ('
      ') : '', - - //主体 - '
      ' - + (conType && config.type != 2 ? '' : titleHTML) - + '
      ' - + (config.type == 0 && config.icon !== -1 ? '' : '') - + (config.type == 1 && conType ? '' : (config.content||'')) - + '
      ' - + ''+ function(){ - var closebtn = ismax ? '' : ''; - config.closeBtn && (closebtn += ''); - return closebtn; - }() + '' - + (config.btn ? function(){ - var button = ''; - typeof config.btn === 'string' && (config.btn = [config.btn]); - for(var i = 0, len = config.btn.length; i < len; i++){ - button += ''+ config.btn[i] +'' - } - return '
      '+ button +'
      ' - }() : '') - + (config.resize ? '' : '') - + '
      ' - ], titleHTML, $('
      ')); - return that; -}; - -//创建骨架 -Class.pt.creat = function(){ - var that = this - ,config = that.config - ,times = that.index, nodeIndex - ,content = config.content - ,conType = typeof content === 'object' - ,body = $('body'); - - if(config.id && $('#'+config.id)[0]) return; - - if(typeof config.area === 'string'){ - config.area = config.area === 'auto' ? ['', ''] : [config.area, '']; - } - - //anim兼容旧版shift - if(config.shift){ - config.anim = config.shift; - } - - if(layer.ie == 6){ - config.fixed = false; - } - - switch(config.type){ - case 0: - config.btn = ('btn' in config) ? config.btn : ready.btn[0]; - layer.closeAll('dialog'); - break; - case 2: - var content = config.content = conType ? config.content : [config.content||'', 'auto']; - config.content = ''; - break; - case 3: - delete config.title; - delete config.closeBtn; - config.icon === -1 && (config.icon === 0); - layer.closeAll('loading'); - break; - case 4: - conType || (config.content = [config.content, 'body']); - config.follow = config.content[1]; - config.content = config.content[0] + ''; - delete config.title; - config.tips = typeof config.tips === 'object' ? config.tips : [config.tips, true]; - config.tipsMore || layer.closeAll('tips'); - break; - } - - //建立容器 - that.vessel(conType, function(html, titleHTML, moveElem){ - body.append(html[0]); - conType ? function(){ - (config.type == 2 || config.type == 4) ? function(){ - $('body').append(html[1]); - }() : function(){ - if(!content.parents('.'+doms[0])[0]){ - content.data('display', content.css('display')).show().addClass('layui-layer-wrap').wrap(html[1]); - $('#'+ doms[0] + times).find('.'+doms[5]).before(titleHTML); - } - }(); - }() : body.append(html[1]); - $('#'+ doms.MOVE)[0] || body.append(ready.moveElem = moveElem); - - that.layero = $('#'+ doms[0] + times); - that.shadeo = $('#'+ doms.SHADE + times); - - config.scrollbar || doms.html.css('overflow', 'hidden').attr('layer-full', times); - }).auto(times); - - //遮罩 - that.shadeo.css({ - 'background-color': config.shade[1] || '#000' - ,'opacity': config.shade[0] || config.shade - }); - - config.type == 2 && layer.ie == 6 && that.layero.find('iframe').attr('src', content[0]); - - //坐标自适应浏览器窗口尺寸 - config.type == 4 ? that.tips() : function(){ - that.offset() - //首次弹出时,若 css 尚未加载,则等待 css 加载完毕后,重新设定尺寸 - parseInt(ready.getStyle(document.getElementById(doms.MOVE), 'z-index')) || function(){ - that.layero.css('visibility', 'hidden'); - layer.ready(function(){ - that.offset(); - that.layero.css('visibility', 'visible'); - }); - }(); - }(); - - //如果是固定定位 - if(config.fixed){ - win.on('resize', function(){ - that.offset(); - (/^\d+%$/.test(config.area[0]) || /^\d+%$/.test(config.area[1])) && that.auto(times); - config.type == 4 && that.tips(); - }); - } - - config.time <= 0 || setTimeout(function(){ - layer.close(that.index); - }, config.time); - that.move().callback(); - - //为兼容jQuery3.0的css动画影响元素尺寸计算 - if(doms.anim[config.anim]){ - var animClass = 'layer-anim '+ doms.anim[config.anim]; - that.layero.addClass(animClass).one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function(){ - $(this).removeClass(animClass); - }); - }; - - //记录关闭动画 - if(config.isOutAnim){ - that.layero.data('isOutAnim', true); - } -}; - -//自适应 -Class.pt.auto = function(index){ - var that = this, config = that.config, layero = $('#'+ doms[0] + index); - - if(config.area[0] === '' && config.maxWidth > 0){ - //为了修复IE7下一个让人难以理解的bug - if(layer.ie && layer.ie < 8 && config.btn){ - layero.width(layero.innerWidth()); - } - layero.outerWidth() > config.maxWidth && layero.width(config.maxWidth); - } - - var area = [layero.innerWidth(), layero.innerHeight()] - ,titHeight = layero.find(doms[1]).outerHeight() || 0 - ,btnHeight = layero.find('.'+doms[6]).outerHeight() || 0 - ,setHeight = function(elem){ - elem = layero.find(elem); - elem.height(area[1] - titHeight - btnHeight - 2*(parseFloat(elem.css('padding-top'))|0)); - }; - - switch(config.type){ - case 2: - setHeight('iframe'); - break; - default: - if(config.area[1] === ''){ - if(config.maxHeight > 0 && layero.outerHeight() > config.maxHeight){ - area[1] = config.maxHeight; - setHeight('.'+doms[5]); - } else if(config.fixed && area[1] >= win.height()){ - area[1] = win.height(); - setHeight('.'+doms[5]); - } - } else { - setHeight('.'+doms[5]); - } - break; - }; - - return that; -}; - -//计算坐标 -Class.pt.offset = function(){ - var that = this, config = that.config, layero = that.layero; - var area = [layero.outerWidth(), layero.outerHeight()]; - var type = typeof config.offset === 'object'; - that.offsetTop = (win.height() - area[1])/2; - that.offsetLeft = (win.width() - area[0])/2; - - if(type){ - that.offsetTop = config.offset[0]; - that.offsetLeft = config.offset[1]||that.offsetLeft; - } else if(config.offset !== 'auto'){ - - if(config.offset === 't'){ //上 - that.offsetTop = 0; - } else if(config.offset === 'r'){ //右 - that.offsetLeft = win.width() - area[0]; - } else if(config.offset === 'b'){ //下 - that.offsetTop = win.height() - area[1]; - } else if(config.offset === 'l'){ //左 - that.offsetLeft = 0; - } else if(config.offset === 'lt'){ //左上角 - that.offsetTop = 0; - that.offsetLeft = 0; - } else if(config.offset === 'lb'){ //左下角 - that.offsetTop = win.height() - area[1]; - that.offsetLeft = 0; - } else if(config.offset === 'rt'){ //右上角 - that.offsetTop = 0; - that.offsetLeft = win.width() - area[0]; - } else if(config.offset === 'rb'){ //右下角 - that.offsetTop = win.height() - area[1]; - that.offsetLeft = win.width() - area[0]; - } else { - that.offsetTop = config.offset; - } - - } - - if(!config.fixed){ - that.offsetTop = /%$/.test(that.offsetTop) ? - win.height()*parseFloat(that.offsetTop)/100 - : parseFloat(that.offsetTop); - that.offsetLeft = /%$/.test(that.offsetLeft) ? - win.width()*parseFloat(that.offsetLeft)/100 - : parseFloat(that.offsetLeft); - that.offsetTop += win.scrollTop(); - that.offsetLeft += win.scrollLeft(); - } - - if(layero.attr('minLeft')){ - that.offsetTop = win.height() - (layero.find(doms[1]).outerHeight() || 0); - that.offsetLeft = layero.css('left'); - } - - layero.css({top: that.offsetTop, left: that.offsetLeft}); -}; - -//Tips -Class.pt.tips = function(){ - var that = this, config = that.config, layero = that.layero; - var layArea = [layero.outerWidth(), layero.outerHeight()], follow = $(config.follow); - if(!follow[0]) follow = $('body'); - var goal = { - width: follow.outerWidth(), - height: follow.outerHeight(), - top: follow.offset().top, - left: follow.offset().left - }, tipsG = layero.find('.layui-layer-TipsG'); - - var guide = config.tips[0]; - config.tips[1] || tipsG.remove(); - - goal.autoLeft = function(){ - if(goal.left + layArea[0] - win.width() > 0){ - goal.tipLeft = goal.left + goal.width - layArea[0]; - tipsG.css({right: 12, left: 'auto'}); - } else { - goal.tipLeft = goal.left; - }; - }; - - //辨别tips的方位 - goal.where = [function(){ //上 - goal.autoLeft(); - goal.tipTop = goal.top - layArea[1] - 10; - tipsG.removeClass('layui-layer-TipsB').addClass('layui-layer-TipsT').css('border-right-color', config.tips[1]); - }, function(){ //右 - goal.tipLeft = goal.left + goal.width + 10; - goal.tipTop = goal.top; - tipsG.removeClass('layui-layer-TipsL').addClass('layui-layer-TipsR').css('border-bottom-color', config.tips[1]); - }, function(){ //下 - goal.autoLeft(); - goal.tipTop = goal.top + goal.height + 10; - tipsG.removeClass('layui-layer-TipsT').addClass('layui-layer-TipsB').css('border-right-color', config.tips[1]); - }, function(){ //左 - goal.tipLeft = goal.left - layArea[0] - 10; - goal.tipTop = goal.top; - tipsG.removeClass('layui-layer-TipsR').addClass('layui-layer-TipsL').css('border-bottom-color', config.tips[1]); - }]; - goal.where[guide-1](); - - /* 8*2为小三角形占据的空间 */ - if(guide === 1){ - goal.top - (win.scrollTop() + layArea[1] + 8*2) < 0 && goal.where[2](); - } else if(guide === 2){ - win.width() - (goal.left + goal.width + layArea[0] + 8*2) > 0 || goal.where[3]() - } else if(guide === 3){ - (goal.top - win.scrollTop() + goal.height + layArea[1] + 8*2) - win.height() > 0 && goal.where[0](); - } else if(guide === 4){ - layArea[0] + 8*2 - goal.left > 0 && goal.where[1]() - } - - layero.find('.'+doms[5]).css({ - 'background-color': config.tips[1], - 'padding-right': (config.closeBtn ? '30px' : '') - }); - layero.css({ - left: goal.tipLeft - (config.fixed ? win.scrollLeft() : 0), - top: goal.tipTop - (config.fixed ? win.scrollTop() : 0) - }); -} - -//拖拽层 -Class.pt.move = function(){ - var that = this - ,config = that.config - ,_DOC = $(document) - ,layero = that.layero - ,moveElem = layero.find(config.move) - ,resizeElem = layero.find('.layui-layer-resize') - ,dict = {}; - - if(config.move){ - moveElem.css('cursor', 'move'); - } - - moveElem.on('mousedown', function(e){ - e.preventDefault(); - if(config.move){ - dict.moveStart = true; - dict.offset = [ - e.clientX - parseFloat(layero.css('left')) - ,e.clientY - parseFloat(layero.css('top')) - ]; - ready.moveElem.css('cursor', 'move').show(); - } - }); - - resizeElem.on('mousedown', function(e){ - e.preventDefault(); - dict.resizeStart = true; - dict.offset = [e.clientX, e.clientY]; - dict.area = [ - layero.outerWidth() - ,layero.outerHeight() - ]; - ready.moveElem.css('cursor', 'se-resize').show(); - }); - - _DOC.on('mousemove', function(e){ - - //拖拽移动 - if(dict.moveStart){ - var X = e.clientX - dict.offset[0] - ,Y = e.clientY - dict.offset[1] - ,fixed = layero.css('position') === 'fixed'; - - e.preventDefault(); - - dict.stX = fixed ? 0 : win.scrollLeft(); - dict.stY = fixed ? 0 : win.scrollTop(); - - //控制元素不被拖出窗口外 - if(!config.moveOut){ - var setRig = win.width() - layero.outerWidth() + dict.stX - ,setBot = win.height() - layero.outerHeight() + dict.stY; - X < dict.stX && (X = dict.stX); - X > setRig && (X = setRig); - Y < dict.stY && (Y = dict.stY); - Y > setBot && (Y = setBot); - } - - layero.css({ - left: X - ,top: Y - }); - } - - //Resize - if(config.resize && dict.resizeStart){ - var X = e.clientX - dict.offset[0] - ,Y = e.clientY - dict.offset[1]; - - e.preventDefault(); - - layer.style(that.index, { - width: dict.area[0] + X - ,height: dict.area[1] + Y - }) - dict.isResize = true; - config.resizing && config.resizing(layero); - } - }).on('mouseup', function(e){ - if(dict.moveStart){ - delete dict.moveStart; - ready.moveElem.hide(); - config.moveEnd && config.moveEnd(layero); - } - if(dict.resizeStart){ - delete dict.resizeStart; - ready.moveElem.hide(); - } - }); - - return that; -}; - -Class.pt.callback = function(){ - var that = this, layero = that.layero, config = that.config; - that.openLayer(); - if(config.success){ - if(config.type == 2){ - layero.find('iframe').on('load', function(){ - config.success(layero, that.index, that); - }); - } else { - config.success(layero, that.index, that); - } - } - layer.ie == 6 && that.IE6(layero); - - //按钮 - layero.find('.'+ doms[6]).children('a').on('click', function(){ - var index = $(this).index(); - if(index === 0){ - if(config.yes){ - config.yes(that.index, layero) - } else if(config['btn1']){ - config['btn1'](that.index, layero) - } else { - layer.close(that.index); - } - } else { - var close = config['btn'+(index+1)] && config['btn'+(index+1)](that.index, layero); - close === false || layer.close(that.index); - } - }); - - //取消 - function cancel(){ - var close = config.cancel && config.cancel(that.index, layero); - close === false || layer.close(that.index); - } - - //右上角关闭回调 - layero.find('.'+ doms[7]).on('click', cancel); - - //点遮罩关闭 - if(config.shadeClose){ - that.shadeo.on('click', function(){ - layer.close(that.index); - }); - } - - //最小化 - layero.find('.layui-layer-min').on('click', function(){ - var min = config.min && config.min(layero, that.index); - min === false || layer.min(that.index, config); - }); - - //全屏/还原 - layero.find('.layui-layer-max').on('click', function(){ - if($(this).hasClass('layui-layer-maxmin')){ - layer.restore(that.index); - config.restore && config.restore(layero, that.index); - } else { - layer.full(that.index, config); - setTimeout(function(){ - config.full && config.full(layero, that.index); - }, 100); - } - }); - - config.end && (ready.end[that.index] = config.end); -}; - -//for ie6 恢复select -ready.reselect = function(){ - $.each($('select'), function(index , value){ - var sthis = $(this); - if(!sthis.parents('.'+doms[0])[0]){ - (sthis.attr('layer') == 1 && $('.'+doms[0]).length < 1) && sthis.removeAttr('layer').show(); - } - sthis = null; - }); -}; - -Class.pt.IE6 = function(layero){ - //隐藏select - $('select').each(function(index , value){ - var sthis = $(this); - if(!sthis.parents('.'+doms[0])[0]){ - sthis.css('display') === 'none' || sthis.attr({'layer' : '1'}).hide(); - } - sthis = null; - }); -}; - -//需依赖原型的对外方法 -Class.pt.openLayer = function(){ - var that = this; - - //置顶当前窗口 - layer.zIndex = that.config.zIndex; - layer.setTop = function(layero){ - var setZindex = function(){ - layer.zIndex++; - layero.css('z-index', layer.zIndex + 1); - }; - layer.zIndex = parseInt(layero[0].style.zIndex); - layero.on('mousedown', setZindex); - return layer.zIndex; - }; -}; - -//记录宽高坐标,用于还原 -ready.record = function(layero){ - var area = [ - layero.width(), - layero.height(), - layero.position().top, - layero.position().left + parseFloat(layero.css('margin-left')) - ]; - layero.find('.layui-layer-max').addClass('layui-layer-maxmin'); - layero.attr({area: area}); -}; - -ready.rescollbar = function(index){ - if(doms.html.attr('layer-full') == index){ - if(doms.html[0].style.removeProperty){ - doms.html[0].style.removeProperty('overflow'); - } else { - doms.html[0].style.removeAttribute('overflow'); - } - doms.html.removeAttr('layer-full'); - } -}; - -/** 内置成员 */ - -window.layer = layer; - -//获取子iframe的DOM -layer.getChildFrame = function(selector, index){ - index = index || $('.'+doms[4]).attr('times'); - return $('#'+ doms[0] + index).find('iframe').contents().find(selector); -}; - -//得到当前iframe层的索引,子iframe时使用 -layer.getFrameIndex = function(name){ - return $('#'+ name).parents('.'+doms[4]).attr('times'); -}; - -//iframe层自适应宽高 -layer.iframeAuto = function(index){ - if(!index) return; - var heg = layer.getChildFrame('html', index).outerHeight(); - var layero = $('#'+ doms[0] + index); - var titHeight = layero.find(doms[1]).outerHeight() || 0; - var btnHeight = layero.find('.'+doms[6]).outerHeight() || 0; - layero.css({height: heg + titHeight + btnHeight}); - layero.find('iframe').css({height: heg}); -}; - -//重置iframe url -layer.iframeSrc = function(index, url){ - $('#'+ doms[0] + index).find('iframe').attr('src', url); -}; - -//设定层的样式 -layer.style = function(index, options, limit){ - var layero = $('#'+ doms[0] + index) - ,contElem = layero.find('.layui-layer-content') - ,type = layero.attr('type') - ,titHeight = layero.find(doms[1]).outerHeight() || 0 - ,btnHeight = layero.find('.'+doms[6]).outerHeight() || 0 - ,minLeft = layero.attr('minLeft'); - - if(type === ready.type[3] || type === ready.type[4]){ - return; - } - - if(!limit){ - if(parseFloat(options.width) <= 260){ - options.width = 260; - }; - - if(parseFloat(options.height) - titHeight - btnHeight <= 64){ - options.height = 64 + titHeight + btnHeight; - }; - } - - layero.css(options); - btnHeight = layero.find('.'+doms[6]).outerHeight(); - - if(type === ready.type[2]){ - layero.find('iframe').css({ - height: parseFloat(options.height) - titHeight - btnHeight - }); - } else { - contElem.css({ - height: parseFloat(options.height) - titHeight - btnHeight - - parseFloat(contElem.css('padding-top')) - - parseFloat(contElem.css('padding-bottom')) - }) - } -}; - -//最小化 -layer.min = function(index, options){ - options = options || {}; - var layero = $('#'+ doms[0] + index) - ,shadeo = $('#'+ doms.SHADE + index) - ,titHeight = layero.find(doms[1]).outerHeight() || 0 - ,left = layero.attr('minLeft') || (181*ready.minIndex)+'px' - ,position = layero.css('position') - ,settings = { - width: 180 - ,height: titHeight - ,position: 'fixed' - ,overflow: 'hidden' - }; - - //记录宽高坐标,用于还原 - ready.record(layero); - - if(ready.minLeft[0]){ - left = ready.minLeft[0]; - ready.minLeft.shift(); - } - - //是否堆叠在左下角 - if(options.minStack){ - settings.left = left; - settings.top = win.height() - titHeight; - layero.attr('minLeft') || ready.minIndex++; //初次执行,最小化操作索引自增 - layero.attr('minLeft', left); - } - - layero.attr('position', position); - layer.style(index, settings, true); - - layero.find('.layui-layer-min').hide(); - layero.attr('type') === 'page' && layero.find(doms[4]).hide(); - ready.rescollbar(index); - - //隐藏遮罩 - shadeo.hide(); -}; - -//还原 -layer.restore = function(index){ - var layero = $('#'+ doms[0] + index) - ,shadeo = $('#'+ doms.SHADE + index) - ,area = layero.attr('area').split(',') - ,type = layero.attr('type'); - - //恢复原来尺寸 - layer.style(index, { - width: parseFloat(area[0]), - height: parseFloat(area[1]), - top: parseFloat(area[2]), - left: parseFloat(area[3]), - position: layero.attr('position'), - overflow: 'visible' - }, true); - - layero.find('.layui-layer-max').removeClass('layui-layer-maxmin'); - layero.find('.layui-layer-min').show(); - layero.attr('type') === 'page' && layero.find(doms[4]).show(); - ready.rescollbar(index); - - //恢复遮罩 - shadeo.show(); -}; - -//全屏 -layer.full = function(index){ - var layero = $('#'+ doms[0] + index), timer; - ready.record(layero); - if(!doms.html.attr('layer-full')){ - doms.html.css('overflow','hidden').attr('layer-full', index); - } - clearTimeout(timer); - timer = setTimeout(function(){ - var isfix = layero.css('position') === 'fixed'; - layer.style(index, { - top: isfix ? 0 : win.scrollTop(), - left: isfix ? 0 : win.scrollLeft(), - width: win.width(), - height: win.height() - }, true); - layero.find('.layui-layer-min').hide(); - }, 100); -}; - -//改变title -layer.title = function(name, index){ - var title = $('#'+ doms[0] + (index||layer.index)).find(doms[1]); - title.html(name); -}; - -//关闭layer总方法 -layer.close = function(index, callback){ - var layero = $('#'+ doms[0] + index), type = layero.attr('type'), closeAnim = 'layer-anim-close'; - if(!layero[0]) return; - var WRAP = 'layui-layer-wrap', remove = function(){ - if(type === ready.type[1] && layero.attr('conType') === 'object'){ - layero.children(':not(.'+ doms[5] +')').remove(); - var wrap = layero.find('.'+WRAP); - for(var i = 0; i < 2; i++){ - wrap.unwrap(); - } - wrap.css('display', wrap.data('display')).removeClass(WRAP); - } else { - //低版本IE 回收 iframe - if(type === ready.type[2]){ - try { - var iframe = $('#'+doms[4]+index)[0]; - iframe.contentWindow.document.write(''); - iframe.contentWindow.close(); - layero.find('.'+doms[5])[0].removeChild(iframe); - } catch(e){} - } - layero[0].innerHTML = ''; - layero.remove(); - } - typeof ready.end[index] === 'function' && ready.end[index](); - delete ready.end[index]; - typeof callback === 'function' && callback(); - }; - - if(layero.data('isOutAnim')){ - layero.addClass('layer-anim '+ closeAnim); - } - - $('#layui-layer-moves, #'+ doms.SHADE + index).remove(); - layer.ie == 6 && ready.reselect(); - ready.rescollbar(index); - if(layero.attr('minLeft')){ - ready.minIndex--; - ready.minLeft.push(layero.attr('minLeft')); - } - - if((layer.ie && layer.ie < 10) || !layero.data('isOutAnim')){ - remove() - } else { - setTimeout(function(){ - remove(); - }, 200); - } -}; - -//关闭所有层 -layer.closeAll = function(type, callback){ - if(typeof type === 'function'){ - callback = type; - type = null; - }; - var domsElem = $('.'+doms[0]); - $.each(domsElem, function(_index){ - var othis = $(this); - var is = type ? (othis.attr('type') === type) : 1; - is && layer.close(othis.attr('times'), _index === domsElem.length - 1 ? callback : null); - is = null; - }); - if(domsElem.length === 0) typeof callback === 'function' && callback(); -}; - -/** - - 拓展模块,layui 开始合并在一起 - - */ - -var cache = layer.cache||{}, skin = function(type){ - return (cache.skin ? (' ' + cache.skin + ' ' + cache.skin + '-'+type) : ''); -}; - -//仿系统prompt -layer.prompt = function(options, yes){ - var style = ''; - options = options || {}; - - if(typeof options === 'function') yes = options; - - if(options.area){ - var area = options.area; - style = 'style="width: '+ area[0] +'; height: '+ area[1] + ';"'; - delete options.area; - } - var prompt, content = options.formType == 2 ? '' : function(){ - return ''; - }(); - - var success = options.success; - delete options.success; - - return layer.open($.extend({ - type: 1 - ,btn: ['确定','取消'] - ,content: content - ,skin: 'layui-layer-prompt' + skin('prompt') - ,maxWidth: win.width() - ,success: function(layero){ - prompt = layero.find('.layui-layer-input'); - prompt.val(options.value || '').focus(); - typeof success === 'function' && success(layero); - } - ,resize: false - ,yes: function(index){ - var value = prompt.val(); - if(value === ''){ - prompt.focus(); - } else if(value.length > (options.maxlength||500)) { - layer.tips('最多输入'+ (options.maxlength || 500) +'个字数', prompt, {tips: 1}); - } else { - yes && yes(value, index, prompt); - } - } - }, options)); -}; - -//tab层 -layer.tab = function(options){ - options = options || {}; - - var tab = options.tab || {} - ,THIS = 'layui-this' - ,success = options.success; - - delete options.success; - - return layer.open($.extend({ - type: 1, - skin: 'layui-layer-tab' + skin('tab'), - resize: false, - title: function(){ - var len = tab.length, ii = 1, str = ''; - if(len > 0){ - str = ''+ tab[0].title +''; - for(; ii < len; ii++){ - str += ''+ tab[ii].title +''; - } - } - return str; - }(), - content: '
        '+ function(){ - var len = tab.length, ii = 1, str = ''; - if(len > 0){ - str = '
      • '+ (tab[0].content || 'no content') +'
      • '; - for(; ii < len; ii++){ - str += '
      • '+ (tab[ii].content || 'no content') +'
      • '; - } - } - return str; - }() +'
      ', - success: function(layero){ - var btn = layero.find('.layui-layer-title').children(); - var main = layero.find('.layui-layer-tabmain').children(); - btn.on('mousedown', function(e){ - e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true; - var othis = $(this), index = othis.index(); - othis.addClass(THIS).siblings().removeClass(THIS); - main.eq(index).show().siblings().hide(); - typeof options.change === 'function' && options.change(index); - }); - typeof success === 'function' && success(layero); - } - }, options)); -}; - -//相册层 -layer.photos = function(options, loop, key){ - var dict = {}; - options = options || {}; - if(!options.photos) return; - - //若 photos 并非选择器或 jQuery 对象,则为普通 object - var isObject = !(typeof options.photos === 'string' || options.photos instanceof $) - ,photos = isObject ? options.photos : {} - ,data = photos.data || [] - ,start = photos.start || 0; - - dict.imgIndex = (start|0) + 1; - options.img = options.img || 'img'; - - var success = options.success; - delete options.success; - - //如果 options.photos 不是一个对象 - if(!isObject){ //页面直接获取 - var parent = $(options.photos), pushData = function(){ - data = []; - parent.find(options.img).each(function(index){ - var othis = $(this); - othis.attr('layer-index', index); - data.push({ - alt: othis.attr('alt'), - pid: othis.attr('layer-pid'), - src: othis.attr('layer-src') || othis.attr('src'), - thumb: othis.attr('src') - }); - }); - }; - - pushData(); - - if (data.length === 0) return; - - loop || parent.on('click', options.img, function(){ - pushData(); - var othis = $(this), index = othis.attr('layer-index'); - layer.photos($.extend(options, { - photos: { - start: index, - data: data, - tab: options.tab - }, - full: options.full - }), true); - }); - - //不直接弹出 - if(!loop) return; - - } else if (data.length === 0){ - return layer.msg('没有图片'); - } - - //上一张 - dict.imgprev = function(key){ - dict.imgIndex--; - if(dict.imgIndex < 1){ - dict.imgIndex = data.length; - } - dict.tabimg(key); - }; - - //下一张 - dict.imgnext = function(key,errorMsg){ - dict.imgIndex++; - if(dict.imgIndex > data.length){ - dict.imgIndex = 1; - if (errorMsg) {return}; - } - dict.tabimg(key) - }; - - //方向键 - dict.keyup = function(event){ - if(!dict.end){ - var code = event.keyCode; - event.preventDefault(); - if(code === 37){ - dict.imgprev(true); - } else if(code === 39) { - dict.imgnext(true); - } else if(code === 27) { - layer.close(dict.index); - } - } - } - - //切换 - dict.tabimg = function(key){ - if(data.length <= 1) return; - photos.start = dict.imgIndex - 1; - layer.close(dict.index); - return layer.photos(options, true, key); - setTimeout(function(){ - layer.photos(options, true, key); - }, 200); - } - - //一些动作 - dict.event = function(){ - /* - dict.bigimg.hover(function(){ - dict.imgsee.show(); - }, function(){ - dict.imgsee.hide(); - }); - */ - - dict.bigimg.find('.layui-layer-imgprev').on('click', function(event){ - event.preventDefault(); - dict.imgprev(true); - }); - - dict.bigimg.find('.layui-layer-imgnext').on('click', function(event){ - event.preventDefault(); - dict.imgnext(true); - }); - - $(document).on('keyup', dict.keyup); - }; - - //图片预加载 - function loadImage(url, callback, error) { - var img = new Image(); - img.src = url; - if(img.complete){ - return callback(img); - } - img.onload = function(){ - img.onload = null; - callback(img); - }; - img.onerror = function(e){ - img.onerror = null; - error(e); - }; - }; - - dict.loadi = layer.load(1, { - shade: 'shade' in options ? false : 0.9, - scrollbar: false - }); - - loadImage(data[start].src, function(img){ - layer.close(dict.loadi); - - //切换图片时不出现动画 - if(key) options.anim = -1; - - //弹出图片层 - dict.index = layer.open($.extend({ - type: 1, - id: 'layui-layer-photos', - area: function(){ - var imgarea = [img.width, img.height]; - var winarea = [$(window).width() - 100, $(window).height() - 100]; - - //如果 实际图片的宽或者高比 屏幕大(那么进行缩放) - if(!options.full && (imgarea[0]>winarea[0]||imgarea[1]>winarea[1])){ - var wh = [imgarea[0]/winarea[0],imgarea[1]/winarea[1]];//取宽度缩放比例、高度缩放比例 - if(wh[0] > wh[1]){//取缩放比例最大的进行缩放 - imgarea[0] = imgarea[0]/wh[0]; - imgarea[1] = imgarea[1]/wh[0]; - } else if(wh[0] < wh[1]){ - imgarea[0] = imgarea[0]/wh[1]; - imgarea[1] = imgarea[1]/wh[1]; - } - } - - return [imgarea[0]+'px', imgarea[1]+'px']; - }(), - title: false, - shade: 0.9, - shadeClose: true, - closeBtn: false, - move: '.layui-layer-phimg img', - moveType: 1, - scrollbar: false, - moveOut: true, - anim: 5, - isOutAnim: false, - skin: 'layui-layer-photos' + skin('photos'), - content: '
      ' - +''+ (data[start].alt||'') +'' - +function(){ - if(data.length > 1){ - return '
      ' - +'' - +'
      '+ (data[start].alt || '') +''+ dict.imgIndex +' / '+ data.length +'
      ' - +'
      ' - } - return ''; - }() - +'
      ', - success: function(layero, index){ - dict.bigimg = layero.find('.layui-layer-phimg'); - dict.imgsee = layero.find('.layui-layer-imgbar'); - dict.event(layero); - options.tab && options.tab(data[start], layero); - typeof success === 'function' && success(layero); - }, end: function(){ - dict.end = true; - $(document).off('keyup', dict.keyup); - } - }, options)); - }, function(){ - layer.close(dict.loadi); - layer.msg('当前图片地址异常
      是否继续查看下一张?', { - time: 30000, - btn: ['下一张', '不看了'], - yes: function(){ - data.length > 1 && dict.imgnext(true,true); - } - }); - }); -}; - -//主入口 -ready.run = function(_$){ - $ = _$; - win = $(window); - doms.html = $('html'); - layer.open = function(deliver){ - var o = new Class(deliver); - return o.index; - }; -}; - -//加载方式 -window.layui && layui.define ? ( - layer.ready() - ,layui.define('jquery', function(exports){ //layui 加载 - layer.path = layui.cache.dir; - ready.run(layui.$); - - //暴露模块 - window.layer = layer; - exports('layer', layer); - }) -) : ( - (typeof define === 'function' && define.amd) ? define(['jquery'], function(){ //requirejs 加载 - ready.run(window.jQuery); - return layer; - }) : function(){ //普通 script 标签加载 - layer.ready(); - ready.run(window.jQuery); - }() -); - -}(window); - - - diff --git a/static/Layui/v2.6.8/modules/laypage.js b/static/Layui/v2.6.8/modules/laypage.js deleted file mode 100644 index 2df27fd..0000000 --- a/static/Layui/v2.6.8/modules/laypage.js +++ /dev/null @@ -1,309 +0,0 @@ -/** - - @Name : laypage 分页组件 - @License:MIT - - */ - -layui.define(function(exports){ - "use strict"; - - var doc = document - ,id = 'getElementById' - ,tag = 'getElementsByTagName' - - //字符常量 - ,MOD_NAME = 'laypage', DISABLED = 'layui-disabled' - - //构造器 - ,Class = function(options){ - var that = this; - that.config = options || {}; - that.config.index = ++laypage.index; - that.render(true); - }; - - //判断传入的容器类型 - Class.prototype.type = function(){ - var config = this.config; - if(typeof config.elem === 'object'){ - return config.elem.length === undefined ? 2 : 3; - } - }; - - //分页视图 - Class.prototype.view = function(){ - var that = this - ,config = that.config - ,groups = config.groups = 'groups' in config ? (config.groups|0) : 5; //连续页码个数 - - //排版 - config.layout = typeof config.layout === 'object' - ? config.layout - : ['prev', 'page', 'next']; - - config.count = config.count|0; //数据总数 - config.curr = (config.curr|0) || 1; //当前页 - - //每页条数的选择项 - config.limits = typeof config.limits === 'object' - ? config.limits - : [10, 20, 30, 40, 50]; - config.limit = (config.limit|0) || 10; //默认条数 - - //总页数 - config.pages = Math.ceil(config.count/config.limit) || 1; - - //当前页不能超过总页数 - if(config.curr > config.pages){ - config.curr = config.pages; - } - - //连续分页个数不能低于0且不能大于总页数 - if(groups < 0){ - groups = 1; - } else if (groups > config.pages){ - groups = config.pages; - } - - config.prev = 'prev' in config ? config.prev : '上一页'; //上一页文本 - config.next = 'next' in config ? config.next : '下一页'; //下一页文本 - - //计算当前组 - var index = config.pages > groups - ? Math.ceil( (config.curr + (groups > 1 ? 1 : 0)) / (groups > 0 ? groups : 1) ) - : 1 - - //视图片段 - ,views = { - //上一页 - prev: function(){ - return config.prev - ? ''+ config.prev +'' - : ''; - }() - - //页码 - ,page: function(){ - var pager = []; - - //数据量为0时,不输出页码 - if(config.count < 1){ - return ''; - } - - //首页 - if(index > 1 && config.first !== false && groups !== 0){ - pager.push(''+ (config.first || 1) +''); - } - - //计算当前页码组的起始页 - var halve = Math.floor((groups-1)/2) //页码数等分 - ,start = index > 1 ? config.curr - halve : 1 - ,end = index > 1 ? (function(){ - var max = config.curr + (groups - halve - 1); - return max > config.pages ? config.pages : max; - }()) : groups; - - //防止最后一组出现“不规定”的连续页码数 - if(end - start < groups - 1){ - start = end - groups + 1; - } - - //输出左分割符 - if(config.first !== false && start > 2){ - pager.push('') - } - - //输出连续页码 - for(; start <= end; start++){ - if(start === config.curr){ - //当前页 - pager.push(''+ start +''); - } else { - pager.push(''+ start +''); - } - } - - //输出输出右分隔符 & 末页 - if(config.pages > groups && config.pages > end && config.last !== false){ - if(end + 1 < config.pages){ - pager.push(''); - } - if(groups !== 0){ - pager.push(''+ (config.last || config.pages) +''); - } - } - - return pager.join(''); - }() - - //下一页 - ,next: function(){ - return config.next - ? ''+ config.next +'' - : ''; - }() - - //数据总数 - ,count: '共 '+ config.count +' 条' - - //每页条数 - ,limit: function(){ - var options = [''; - }() - - //刷新当前页 - ,refresh: ['' - ,'' - ,''].join('') - - //跳页区域 - ,skip: function(){ - return ['到第' - ,'' - ,'页' - ,''].join(''); - }() - }; - - return ['
      ' - ,function(){ - var plate = []; - layui.each(config.layout, function(index, item){ - if(views[item]){ - plate.push(views[item]) - } - }); - return plate.join(''); - }() - ,'
      '].join(''); - }; - - //跳页的回调 - Class.prototype.jump = function(elem, isskip){ - if(!elem) return; - var that = this - ,config = that.config - ,childs = elem.children - ,btn = elem[tag]('button')[0] - ,input = elem[tag]('input')[0] - ,select = elem[tag]('select')[0] - ,skip = function(){ - var curr = input.value.replace(/\s|\D/g, '')|0; - if(curr){ - config.curr = curr; - that.render(); - } - }; - - if(isskip) return skip(); - - //页码 - for(var i = 0, len = childs.length; i < len; i++){ - if(childs[i].nodeName.toLowerCase() === 'a'){ - laypage.on(childs[i], 'click', function(){ - var curr = this.getAttribute('data-page')|0; - if(curr < 1 || curr > config.pages) return; - config.curr = curr; - that.render(); - }); - } - } - - //条数 - if(select){ - laypage.on(select, 'change', function(){ - var value = this.value; - if(config.curr*value > config.count){ - config.curr = Math.ceil(config.count/value); - } - config.limit = value; - that.render(); - }); - } - - //确定 - if(btn){ - laypage.on(btn, 'click', function(){ - skip(); - }); - } - }; - - //输入页数字控制 - Class.prototype.skip = function(elem){ - if(!elem) return; - var that = this, input = elem[tag]('input')[0]; - if(!input) return; - laypage.on(input, 'keyup', function(e){ - var value = this.value - ,keyCode = e.keyCode; - if(/^(37|38|39|40)$/.test(keyCode)) return; - if(/\D/.test(value)){ - this.value = value.replace(/\D/, ''); - } - if(keyCode === 13){ - that.jump(elem, true) - } - }); - }; - - //渲染分页 - Class.prototype.render = function(load){ - var that = this - ,config = that.config - ,type = that.type() - ,view = that.view(); - - if(type === 2){ - config.elem && (config.elem.innerHTML = view); - } else if(type === 3){ - config.elem.html(view); - } else { - if(doc[id](config.elem)){ - doc[id](config.elem).innerHTML = view; - } - } - - config.jump && config.jump(config, load); - - var elem = doc[id]('layui-laypage-' + config.index); - that.jump(elem); - - if(config.hash && !load){ - location.hash = '!'+ config.hash +'='+ config.curr; - } - - that.skip(elem); - }; - - //外部接口 - var laypage = { - //分页渲染 - render: function(options){ - var o = new Class(options); - return o.index; - } - ,index: layui.laypage ? (layui.laypage.index + 10000) : 0 - ,on: function(elem, even, fn){ - elem.attachEvent ? elem.attachEvent('on'+ even, function(e){ //for ie - e.target = e.srcElement; - fn.call(elem, e); - }) : elem.addEventListener(even, fn, false); - return this; - } - } - - exports(MOD_NAME, laypage); -}); \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/laytpl.js b/static/Layui/v2.6.8/modules/laytpl.js deleted file mode 100644 index 498d73f..0000000 --- a/static/Layui/v2.6.8/modules/laytpl.js +++ /dev/null @@ -1,122 +0,0 @@ -/** - - @Name : laytpl 模板引擎 - @License:MIT - - */ - -layui.define(function(exports){ - - "use strict"; - - var config = { - open: '{{', - close: '}}' - }; - - var tool = { - exp: function(str){ - return new RegExp(str, 'g'); - }, - //匹配满足规则内容 - query: function(type, _, __){ - var types = [ - '#([\\s\\S])+?', //js语句 - '([^{#}])*?' //普通字段 - ][type || 0]; - return exp((_||'') + config.open + types + config.close + (__||'')); - }, - escape: function(html){ - return String(html||'').replace(/&(?!#?[a-zA-Z0-9]+;)/g, '&') - .replace(//g, '>').replace(/'/g, ''').replace(/"/g, '"'); - }, - error: function(e, tplog){ - var error = 'Laytpl Error: '; - typeof console === 'object' && console.error(error + e + '\n'+ (tplog || '')); - return error + e; - } - }; - - var exp = tool.exp, Tpl = function(tpl){ - this.tpl = tpl; - }; - - Tpl.pt = Tpl.prototype; - - window.errors = 0; - - //编译模版 - Tpl.pt.parse = function(tpl, data){ - var that = this, tplog = tpl; - var jss = exp('^'+config.open+'#', ''), jsse = exp(config.close+'$', ''); - - tpl = tpl.replace(/\s+|\r|\t|\n/g, ' ') - .replace(exp(config.open+'#'), config.open+'# ') - .replace(exp(config.close+'}'), '} '+config.close).replace(/\\/g, '\\\\') - - //不匹配指定区域的内容 - .replace(exp(config.open + '!(.+?)!' + config.close), function(str){ - str = str.replace(exp('^'+ config.open + '!'), '') - .replace(exp('!'+ config.close), '') - .replace(exp(config.open + '|' + config.close), function(tag){ - return tag.replace(/(.)/g, '\\$1') - }); - return str - }) - - //匹配JS规则内容 - .replace(/(?="|')/g, '\\').replace(tool.query(), function(str){ - str = str.replace(jss, '').replace(jsse, ''); - return '";' + str.replace(/\\(.)/g, '$1') + ';view+="'; - }) - - //匹配普通字段 - .replace(tool.query(1), function(str){ - var start = '"+('; - if(str.replace(/\s/g, '') === config.open+config.close){ - return ''; - } - str = str.replace(exp(config.open+'|'+config.close), ''); - if(/^=/.test(str)){ - str = str.replace(/^=/, ''); - start = '"+_escape_('; - } - return start + str.replace(/\\(.)/g, '$1') + ')+"'; - }); - - tpl = '"use strict";var view = "' + tpl + '";return view;'; - - try{ - that.cache = tpl = new Function('d, _escape_', tpl); - return tpl(data, tool.escape); - } catch(e){ - delete that.cache; - return tool.error(e, tplog); - } - }; - - Tpl.pt.render = function(data, callback){ - var that = this, tpl; - if(!data) return tool.error('no data'); - tpl = that.cache ? that.cache(data, tool.escape) : that.parse(that.tpl, data); - if(!callback) return tpl; - callback(tpl); - }; - - var laytpl = function(tpl){ - if(typeof tpl !== 'string') return tool.error('Template not found'); - return new Tpl(tpl); - }; - - laytpl.config = function(options){ - options = options || {}; - for(var i in options){ - config[i] = options[i]; - } - }; - - laytpl.v = '1.2.0'; - - exports('laytpl', laytpl); - -}); \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/layui.all.js b/static/Layui/v2.6.8/modules/layui.all.js deleted file mode 100644 index 4a7799b..0000000 --- a/static/Layui/v2.6.8/modules/layui.all.js +++ /dev/null @@ -1,12 +0,0 @@ - -/*! - * 用于打包聚合版,该文件不会存在于构建后的目录 - */ - -layui.define(function(exports){ - var cache = layui.cache; - layui.config({ - dir: cache.dir.replace(/lay\/dest\/$/, '') - }); - exports('layui.all', layui.v); -}); \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/mobile.js b/static/Layui/v2.6.8/modules/mobile.js deleted file mode 100644 index 7306fb6..0000000 --- a/static/Layui/v2.6.8/modules/mobile.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - - @Name:layui 移动模块入口 | 构建后则为移动模块集合 - @License:MIT - - */ - - -if(!layui['layui.mobile']){ - layui.config({ - base: layui.cache.dir + 'lay/modules/mobile/' - }).extend({ - 'layer-mobile': 'layer-mobile' - ,'zepto': 'zepto' - ,'upload-mobile': 'upload-mobile' - ,'layim-mobile': 'layim-mobile' - }); -} - -layui.define([ - 'layer-mobile' - ,'zepto' - ,'layim-mobile' -], function(exports){ - exports('mobile', { - layer: layui['layer-mobile'] //弹层 - ,layim: layui['layim-mobile'] //WebIM - }); -}); \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/rate.js b/static/Layui/v2.6.8/modules/rate.js deleted file mode 100644 index 550d79c..0000000 --- a/static/Layui/v2.6.8/modules/rate.js +++ /dev/null @@ -1,218 +0,0 @@ -/** - - @Title: rate 评分评星组件 - @License:MIT - - */ - -layui.define('jquery',function(exports){ - "use strict"; - var $ = layui.jquery - - //外部接口 - ,rate = { - config: {} - ,index: layui.rate ? (layui.rate.index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisRate = function(){ - var that = this - ,options = that.config; - - return { - setvalue: function(value){ - that.setvalue.call(that, value); - } - ,config: options - } - } - - //字符常量 - ,MOD_NAME = 'rate',ELEM_VIEW = 'layui-rate', ICON_RATE = 'layui-icon-rate', ICON_RATE_SOLID = 'layui-icon-rate-solid', ICON_RATE_HALF = 'layui-icon-rate-half' - - ,ICON_SOLID_HALF = 'layui-icon-rate-solid layui-icon-rate-half', ICON_SOLID_RATE = 'layui-icon-rate-solid layui-icon-rate', ICON_HALF_RATE = 'layui-icon-rate layui-icon-rate-half' - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++rate.index; - that.config = $.extend({}, that.config, rate.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - length: 5 //初始长度 - ,text: false //是否显示评分等级 - ,readonly: false //是否只读 - ,half: false //是否可以半星 - ,value: 0 //星星选中个数 - ,theme: '' - }; - - //评分渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config - ,style = options.theme ? ('style="color: '+ options.theme + ';"') : ''; - - options.elem = $(options.elem); - - //最大值不能大于总长度 - if(options.value > options.length){ - options.value = options.length; - } - - //如果没有选择半星的属性,却给了小数的数值,统一向上或向下取整 - if(parseInt(options.value) !== options.value){ - if(!options.half){ - options.value = (Math.ceil(options.value) - options.value) < 0.5 ? Math.ceil(options.value): Math.floor(options.value) - } - } - - //组件模板 - var temp = '
        '; - for(var i = 1;i <= options.length;i++){ - var item = '
      • '; - - if(options.half){ - if(parseInt(options.value) !== options.value){ - if(i == Math.ceil(options.value)){ - temp = temp + '
      • '; - }else{ - temp = temp + item - } - }else{ - temp = temp + item - } - }else{ - temp = temp +item; - } - } - temp += '
      ' + (options.text ? (''+ options.value + '星') : '') + ''; - - //开始插入替代元素 - var othis = options.elem - ,hasRender = othis.next('.' + ELEM_VIEW); - - //生成替代元素 - hasRender[0] && hasRender.remove(); //如果已经渲染,则Rerender - - that.elemTemp = $(temp); - - options.span = that.elemTemp.next('span'); - - options.setText && options.setText(options.value); - - othis.html(that.elemTemp); - - othis.addClass("layui-inline"); - - //如果不是只读,那么进行触控事件 - if(!options.readonly) that.action(); - - }; - - //评分重置 - Class.prototype.setvalue = function(value){ - var that = this - ,options = that.config ; - - options.value = value ; - that.render(); - }; - - //li触控事件 - Class.prototype.action = function(){ - var that = this - ,options = that.config - ,_ul = that.elemTemp - ,wide = _ul.find("i").width(); - - _ul.children("li").each(function(index){ - var ind = index + 1 - ,othis = $(this); - - //点击 - othis.on('click', function(e){ - //将当前点击li的索引值赋给value - options.value = ind; - if(options.half){ - //获取鼠标在li上的位置 - var x = e.pageX - $(this).offset().left; - if(x <= wide / 2){ - options.value = options.value - 0.5; - } - } - - if(options.text) _ul.next("span").text(options.value + "星"); - - options.choose && options.choose(options.value); - options.setText && options.setText(options.value); - }); - - //移入 - othis.on('mousemove', function(e){ - _ul.find("i").each(function(){ - $(this).addClass(ICON_RATE).removeClass(ICON_SOLID_HALF) - }); - _ul.find("i:lt(" + ind + ")").each(function(){ - $(this).addClass(ICON_RATE_SOLID).removeClass(ICON_HALF_RATE) - }); - // 如果设置可选半星,那么判断鼠标相对li的位置 - if(options.half){ - var x = e.pageX - $(this).offset().left; - if(x <= wide / 2){ - othis.children("i").addClass(ICON_RATE_HALF).removeClass(ICON_RATE_SOLID) - } - } - }) - - //移出 - othis.on('mouseleave', function(){ - _ul.find("i").each(function(){ - $(this).addClass(ICON_RATE).removeClass(ICON_SOLID_HALF) - }); - _ul.find("i:lt(" + Math.floor(options.value) + ")").each(function(){ - $(this).addClass(ICON_RATE_SOLID).removeClass(ICON_HALF_RATE) - }); - //如果设置可选半星,根据分数判断是否有半星 - if(options.half){ - if(parseInt(options.value) !== options.value){ - _ul.children("li:eq(" + Math.floor(options.value) + ")").children("i").addClass(ICON_RATE_HALF).removeClass(ICON_SOLID_RATE) - } - } - }) - - }) - }; - - //事件处理 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - }; - - //核心入口 - rate.render = function(options){ - var inst = new Class(options); - return thisRate.call(inst); - }; - - exports(MOD_NAME, rate); -}) \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/slider.js b/static/Layui/v2.6.8/modules/slider.js deleted file mode 100644 index e449632..0000000 --- a/static/Layui/v2.6.8/modules/slider.js +++ /dev/null @@ -1,383 +0,0 @@ -/** - - @Title: slider 滑块组件 - @License:MIT - - */ - -layui.define('jquery', function(exports){ - "use strict"; - var $ = layui.jquery - - //外部接口 - ,slider = { - config: {} - ,index: layui.slider ? (layui.slider.index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisSlider = function(){ - var that = this - ,options = that.config; - - return { - setValue: function(value, index){ //设置值 - options.value = value; - return that.slide('set', value, index || 0); - } - ,config: options - } - } - - //字符常量 - ,MOD_NAME = 'slider', DISABLED = 'layui-disabled', ELEM_VIEW = 'layui-slider', SLIDER_BAR = 'layui-slider-bar', SLIDER_WRAP = 'layui-slider-wrap', SLIDER_WRAP_BTN = 'layui-slider-wrap-btn', SLIDER_TIPS = 'layui-slider-tips', SLIDER_INPUT = 'layui-slider-input', SLIDER_INPUT_TXT = 'layui-slider-input-txt', SLIDER_INPUT_BTN = 'layui-slider-input-btn', ELEM_HOVER = 'layui-slider-hover' - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++slider.index; - that.config = $.extend({}, that.config, slider.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - type: 'default' //滑块类型,垂直:vertical - ,min: 0 //最小值 - ,max: 100 //最大值,默认100 - ,value: 0 //初始值,默认为0 - ,step: 1 //间隔值 - ,showstep: false //间隔点开启 - ,tips: true //文字提示,开启 - ,input: false //输入框,关闭 - ,range: false //范围选择,与输入框不能同时开启,默认关闭 - ,height: 200 //配合 type:"vertical" 使用,默认200px - ,disabled: false //滑块禁用,默认关闭 - ,theme: '#009688' //主题颜色 - }; - - //滑块渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - //间隔值不能小于 1 - if(options.step < 1) options.step = 1; - - //最大值不能小于最小值 - if(options.max < options.min) options.max = options.min + options.step; - - - - //判断是否开启双滑块 - if(options.range){ - options.value = typeof(options.value) == 'object' ? options.value : [options.min, options.value]; - var minValue = Math.min(options.value[0], options.value[1]) - ,maxValue = Math.max(options.value[0], options.value[1]); - options.value[0] = minValue > options.min ? minValue : options.min; - options.value[1] = maxValue > options.min ? maxValue : options.min; - options.value[0] = options.value[0] > options.max ? options.max : options.value[0]; - options.value[1] = options.value[1] > options.max ? options.max : options.value[1]; - - var scaleFir = Math.floor((options.value[0] - options.min) / (options.max - options.min) * 100) - ,scaleSec = Math.floor((options.value[1] - options.min) / (options.max - options.min) * 100) - ,scale = scaleSec - scaleFir + '%'; - scaleFir = scaleFir + '%'; - scaleSec = scaleSec + '%'; - } else { - //如果初始值是一个数组,则获取数组的最小值 - if(typeof options.value == 'object'){ - options.value = Math.min.apply(null, options.value); - } - - //初始值不能小于最小值且不能大于最大值 - if(options.value < options.min) options.value = options.min; - if(options.value > options.max) options.value = options.max; - - var scale = Math.floor((options.value - options.min) / (options.max - options.min) * 100) + '%'; - }; - - - //如果禁用,颜色为统一的灰色 - var theme = options.disabled ? '#c2c2c2' : options.theme; - - //滑块 - var temp = '
      '+ (options.tips ? '
      ' : '') + - '
      ' + - '
      '+ (options.range ? '
      ' : '') +'
      '; - - var othis = $(options.elem) - ,hasRender = othis.next('.' + ELEM_VIEW); - //生成替代元素 - hasRender[0] && hasRender.remove(); //如果已经渲染,则Rerender - that.elemTemp = $(temp); - - //把数据缓存到滑块上 - if(options.range){ - that.elemTemp.find('.' + SLIDER_WRAP).eq(0).data('value', options.value[0]); - that.elemTemp.find('.' + SLIDER_WRAP).eq(1).data('value', options.value[1]); - }else{ - that.elemTemp.find('.' + SLIDER_WRAP).data('value', options.value); - }; - - //插入替代元素 - othis.html(that.elemTemp); - - //垂直滑块 - if(options.type === 'vertical'){ - that.elemTemp.height(options.height + 'px'); - }; - - //显示间断点 - if(options.showstep){ - var number = (options.max - options.min) / options.step, item = ''; - for(var i = 1; i < number + 1; i++) { - var step = i * 100 / number; - if(step < 100){ - item += '
      ' - } - }; - that.elemTemp.append(item); - }; - - //插入输入框 - if(options.input && !options.range){ - var elemInput = $('
      '); - othis.css("position","relative"); - othis.append(elemInput); - othis.find('.' + SLIDER_INPUT_TXT).children('input').val(options.value); - if(options.type === 'vertical'){ - elemInput.css({ - left: 0 - ,top: -48 - }); - } else { - that.elemTemp.css("margin-right", elemInput.outerWidth() + 15); - } - }; - - //给未禁止的滑块滑动事件 - if(!options.disabled){ - that.slide(); - }else{ - that.elemTemp.addClass(DISABLED); - that.elemTemp.find('.' + SLIDER_WRAP_BTN).addClass(DISABLED); - }; - - //划过滑块显示数值 - that.elemTemp.find('.' + SLIDER_WRAP_BTN).on('mouseover', function(){ - var sliderWidth = options.type === 'vertical' ? options.height : that.elemTemp[0].offsetWidth - ,sliderWrap = that.elemTemp.find('.' + SLIDER_WRAP) - ,tipsLeft = options.type === 'vertical' ? (sliderWidth - $(this).parent()[0].offsetTop - sliderWrap.height()) : $(this).parent()[0].offsetLeft - ,left = tipsLeft / sliderWidth * 100 - ,value = $(this).parent().data('value') - ,tipsTxt = options.setTips ? options.setTips(value) : value; - that.elemTemp.find('.' + SLIDER_TIPS).html(tipsTxt); - if(options.type === 'vertical'){ - that.elemTemp.find('.' + SLIDER_TIPS).css({"bottom":left + '%', "margin-bottom":"20px", "display":"inline-block"}); - }else{ - that.elemTemp.find('.' + SLIDER_TIPS).css({"left":left + '%', "display":"inline-block"}); - }; - }).on('mouseout', function(){ - that.elemTemp.find('.' + SLIDER_TIPS).css("display", "none"); - }); - }; - - //滑块滑动 - Class.prototype.slide = function(setValue, value, i){ - var that = this - ,options = that.config - ,sliderAct = that.elemTemp - ,sliderWidth = function(){ - return options.type === 'vertical' ? options.height : sliderAct[0].offsetWidth - } - ,sliderWrap = sliderAct.find('.' + SLIDER_WRAP) - ,sliderTxt = sliderAct.next('.' + SLIDER_INPUT) - ,inputValue = sliderTxt.children('.' + SLIDER_INPUT_TXT).children('input').val() - ,step = 100 / ((options.max - options.min) / Math.ceil(options.step)) - ,change = function(offsetValue, index){ - if(Math.ceil(offsetValue) * step > 100){ - offsetValue = Math.ceil(offsetValue) * step - }else{ - offsetValue = Math.round(offsetValue) * step - }; - offsetValue = offsetValue > 100 ? 100: offsetValue; - sliderWrap.eq(index).css((options.type === 'vertical' ?'bottom':'left'), offsetValue + '%'); - var firLeft = valueTo(sliderWrap[0].offsetLeft) - ,secLeft = options.range ? valueTo(sliderWrap[1].offsetLeft) : 0; - if(options.type === 'vertical'){ - sliderAct.find('.' + SLIDER_TIPS).css({"bottom":offsetValue + '%', "margin-bottom":"20px"}); - firLeft = valueTo(sliderWidth() - sliderWrap[0].offsetTop - sliderWrap.height()); - secLeft = options.range ? valueTo(sliderWidth() - sliderWrap[1].offsetTop - sliderWrap.height()) : 0; - }else{ - sliderAct.find('.' + SLIDER_TIPS).css("left",offsetValue + '%'); - }; - firLeft = firLeft > 100 ? 100: firLeft; - secLeft = secLeft > 100 ? 100: secLeft; - var minLeft = Math.min(firLeft, secLeft) - ,wrapWidth = Math.abs(firLeft - secLeft); - if(options.type === 'vertical'){ - sliderAct.find('.' + SLIDER_BAR).css({"height":wrapWidth + '%', "bottom":minLeft + '%'}); - }else{ - sliderAct.find('.' + SLIDER_BAR).css({"width":wrapWidth + '%', "left":minLeft + '%'}); - }; - var selfValue = options.min + Math.round((options.max - options.min) * offsetValue / 100); - inputValue = selfValue; - sliderTxt.children('.' + SLIDER_INPUT_TXT).children('input').val(inputValue); - sliderWrap.eq(index).data('value', selfValue); - sliderAct.find('.' + SLIDER_TIPS).html(options.setTips ? options.setTips(selfValue) : selfValue); - - //如果开启范围选择,则返回数组值 - if(options.range){ - var arrValue = [ - sliderWrap.eq(0).data('value') - ,sliderWrap.eq(1).data('value') - ]; - if(arrValue[0] > arrValue[1]) arrValue.reverse(); //如果前面的圆点超过了后面的圆点值,则调换顺序 - } - - //回调 - options.change && options.change(options.range ? arrValue : selfValue); - } - ,valueTo = function(value){ - var oldLeft = value / sliderWidth() * 100 / step - ,left = Math.round(oldLeft) * step; - if(value == sliderWidth()){ - left = Math.ceil(oldLeft) * step; - }; - return left; - } - - //拖拽元素 - ,elemMove = $(['
      sliderWidth())left = sliderWidth(); - var reaLeft = left / sliderWidth() * 100 / step; - change(reaLeft, index); - othis.addClass(ELEM_HOVER); - sliderAct.find('.' + SLIDER_TIPS).show(); - e.preventDefault(); - }; - - var up = function(){ - othis.removeClass(ELEM_HOVER); - sliderAct.find('.' + SLIDER_TIPS).hide(); - }; - - createMoveElem(move, up) - }); - }); - - //点击滑块 - sliderAct.on('click', function(e){ - var main = $('.' + SLIDER_WRAP_BTN); - if(!main.is(event.target) && main.has(event.target).length === 0 && main.length){ - var left = options.type === 'vertical' ? (sliderWidth() - e.clientY + $(this).offset().top):(e.clientX - $(this).offset().left), index; - if(left < 0)left = 0; - if(left > sliderWidth())left = sliderWidth(); - var reaLeft = left / sliderWidth() * 100 / step; - if(options.range){ - if(options.type === 'vertical'){ - index = Math.abs(left - parseInt($(sliderWrap[0]).css('bottom'))) > Math.abs(left - parseInt($(sliderWrap[1]).css('bottom'))) ? 1 : 0; - }else{ - index = Math.abs(left - sliderWrap[0].offsetLeft) > Math.abs(left - sliderWrap[1].offsetLeft) ? 1 : 0; - } - }else{ - index = 0; - }; - change(reaLeft, index); - e.preventDefault(); - } - }); - - //点击加减输入框 - sliderTxt.children('.' + SLIDER_INPUT_BTN).children('i').each(function(index){ - $(this).on('click', function(){ - inputValue = sliderTxt.children('.' + SLIDER_INPUT_TXT).children('input').val(); - if(index == 1){ //减 - inputValue = inputValue - options.step < options.min - ? options.min - : Number(inputValue) - options.step; - }else{ - inputValue = Number(inputValue) + options.step > options.max - ? options.max - : Number(inputValue) + options.step; - }; - var inputScale = (inputValue - options.min) / (options.max - options.min) * 100 / step; - change(inputScale, 0); - }); - }); - - //获取输入框值 - var getInputValue = function(){ - var realValue = this.value; - realValue = isNaN(realValue) ? 0 : realValue; - realValue = realValue < options.min ? options.min : realValue; - realValue = realValue > options.max ? options.max : realValue; - this.value = realValue; - var inputScale = (realValue - options.min) / (options.max - options.min) * 100 / step; - change(inputScale, 0); - }; - sliderTxt.children('.' + SLIDER_INPUT_TXT).children('input').on('keydown', function(e){ - if(e.keyCode === 13){ - e.preventDefault(); - getInputValue.call(this); - } - }).on('change', getInputValue); - }; - - //事件处理 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - }; - - //核心入口 - slider.render = function(options){ - var inst = new Class(options); - return thisSlider.call(inst); - }; - - exports(MOD_NAME, slider); -}) \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/table.js b/static/Layui/v2.6.8/modules/table.js deleted file mode 100644 index 5ccd2e3..0000000 --- a/static/Layui/v2.6.8/modules/table.js +++ /dev/null @@ -1,2042 +0,0 @@ - -/*! - * layui.table - * 数据表格组件 - */ - -layui.define(['laytpl', 'laypage', 'layer', 'form', 'util'], function(exports){ - "use strict"; - - var $ = layui.$ - ,laytpl = layui.laytpl - ,laypage = layui.laypage - ,layer = layui.layer - ,form = layui.form - ,util = layui.util - ,hint = layui.hint() - ,device = layui.device() - - //外部接口 - ,table = { - config: { - checkName: 'LAY_CHECKED' //是否选中状态的字段名 - ,indexName: 'LAY_TABLE_INDEX' //初始下标索引名,用于恢复排序 - } //全局配置项 - ,cache: {} //数据缓存 - ,index: layui.table ? (layui.table.index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisTable = function(){ - var that = this - ,options = that.config - ,id = options.id || options.index; - - if(id){ - thisTable.that[id] = that; //记录当前实例对象 - thisTable.config[id] = options; //记录当前实例配置项 - } - - return { - config: options - ,reload: function(options, deep){ - that.reload.call(that, options, deep); - } - ,setColsWidth: function(){ - that.setColsWidth.call(that); - } - ,resize: function(){ //重置表格尺寸/结构 - that.resize.call(that); - } - } - } - - //获取当前实例配置项 - ,getThisTableConfig = function(id){ - var config = thisTable.config[id]; - if(!config) hint.error(id ? ('The table instance with ID \''+ id +'\' not found') : 'ID argument required'); - return config || null; - } - - //解析自定义模板数据 - ,parseTempData = function(item3, content, tplData, text){ //表头数据、原始内容、表体数据、是否只返回文本 - var options = this.config || {}; - - //是否防 xss - if(options.escape) content = util.escape(content); - - //获取内容 - var str = item3.templet ? function(){ - return typeof item3.templet === 'function' - ? item3.templet(tplData) - : laytpl($(item3.templet).html() || String(content)).render(tplData) - }() : content; - return text ? $('
      '+ str +'
      ').text() : str; - } - - //字符常量 - ,MOD_NAME = 'table', ELEM = '.layui-table', THIS = 'layui-this', SHOW = 'layui-show', HIDE = 'layui-hide', DISABLED = 'layui-disabled', NONE = 'layui-none' - - ,ELEM_VIEW = 'layui-table-view', ELEM_TOOL = '.layui-table-tool', ELEM_BOX = '.layui-table-box', ELEM_INIT = '.layui-table-init', ELEM_HEADER = '.layui-table-header', ELEM_BODY = '.layui-table-body', ELEM_MAIN = '.layui-table-main', ELEM_FIXED = '.layui-table-fixed', ELEM_FIXL = '.layui-table-fixed-l', ELEM_FIXR = '.layui-table-fixed-r', ELEM_TOTAL = '.layui-table-total', ELEM_PAGE = '.layui-table-page', ELEM_SORT = '.layui-table-sort', ELEM_EDIT = 'layui-table-edit', ELEM_HOVER = 'layui-table-hover' - - //thead区域模板 - ,TPL_HEADER = function(options){ - var rowCols = '{{#if(item2.colspan){}} colspan="{{item2.colspan}}"{{#} if(item2.rowspan){}} rowspan="{{item2.rowspan}}"{{#}}}'; - - options = options || {}; - return ['
      ' - ,'' - ,'{{# layui.each(d.data.cols, function(i1, item1){ }}' - ,'' - ,'{{# layui.each(item1, function(i2, item2){ }}' - ,'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}' - ,'{{# if(item2.fixed === "right"){ right = true; } }}' - ,function(){ - if(options.fixed && options.fixed !== 'right'){ - return '{{# if(item2.fixed && item2.fixed !== "right"){ }}'; - } - if(options.fixed === 'right'){ - return '{{# if(item2.fixed === "right"){ }}'; - } - return ''; - }() - ,'{{# var isSort = !(item2.colGroup) && item2.sort; }}' - ,'' - ,(options.fixed ? '{{# }; }}' : '') - ,'{{# }); }}' - ,'' - ,'{{# }); }}' - ,'' - ,'
      ' - ,'
      ' - ,'{{# if(item2.type === "checkbox"){ }}' //复选框 - ,'' - ,'{{# } else { }}' - ,'{{item2.title||""}}' - ,'{{# if(isSort){ }}' - ,'' - ,'{{# } }}' - ,'{{# } }}' - ,'
      ' - ,'
      '].join(''); - } - - //tbody区域模板 - ,TPL_BODY = ['' - ,'' - ,'
      '].join('') - - //主模板 - ,TPL_MAIN = ['
      ' - - ,'{{# if(d.data.toolbar){ }}' - ,'
      ' - ,'
      ' - ,'
      ' - ,'
      ' - ,'{{# } }}' - - ,'
      ' - ,'{{# if(d.data.loading){ }}' - ,'
      ' - ,'' - ,'
      ' - ,'{{# } }}' - - ,'{{# var left, right; }}' - ,'
      ' - ,TPL_HEADER() - ,'
      ' - ,'
      ' - ,TPL_BODY - ,'
      ' - - ,'{{# if(left){ }}' - ,'
      ' - ,'
      ' - ,TPL_HEADER({fixed: true}) - ,'
      ' - ,'
      ' - ,TPL_BODY - ,'
      ' - ,'
      ' - ,'{{# }; }}' - - ,'{{# if(right){ }}' - ,'
      ' - ,'
      ' - ,TPL_HEADER({fixed: 'right'}) - ,'
      ' - ,'
      ' - ,'
      ' - ,TPL_BODY - ,'
      ' - ,'
      ' - ,'{{# }; }}' - ,'
      ' - - ,'{{# if(d.data.totalRow){ }}' - ,'
      ' - ,'' - ,'' - , '
      ' - ,'
      ' - ,'{{# } }}' - - ,'{{# if(d.data.page){ }}' - ,'
      ' - ,'
      ' - ,'
      ' - ,'{{# } }}' - - ,'' - ,'
      '].join('') - - ,_WIN = $(window) - ,_DOC = $(document) - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++table.index; - that.config = $.extend({}, that.config, table.config, options); - that.render(); - }; - - //初始默认配置 - Class.prototype.config = { - limit: 10 //每页显示的数量 - ,loading: true //请求数据时,是否显示 loading - ,cellMinWidth: 60 //所有单元格默认最小宽度 - ,defaultToolbar: ['filter', 'exports', 'print'] //工具栏右侧图标 - ,autoSort: true //是否前端自动排序。如果否,则需自主排序(通常为服务端处理好排序) - ,text: { - none: '无数据' - } - }; - - //表格渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - options.elem = $(options.elem); - options.where = options.where || {}; - options.id = options.id || options.elem.attr('id') || that.index; - - //请求参数的自定义格式 - options.request = $.extend({ - pageName: 'page' - ,limitName: 'limit' - }, options.request) - - //响应数据的自定义格式 - options.response = $.extend({ - statusName: 'code' //规定数据状态的字段名称 - ,statusCode: 0 //规定成功的状态码 - ,msgName: 'msg' //规定状态信息的字段名称 - ,dataName: 'data' //规定数据总数的字段名称 - ,totalRowName: 'totalRow' //规定数据统计的字段名称 - ,countName: 'count' - }, options.response); - - //如果 page 传入 laypage 对象 - if(typeof options.page === 'object'){ - options.limit = options.page.limit || options.limit; - options.limits = options.page.limits || options.limits; - that.page = options.page.curr = options.page.curr || 1; - delete options.page.elem; - delete options.page.jump; - } - - if(!options.elem[0]) return that; - - //高度铺满:full-差距值 - if(options.height && /^full-\d+$/.test(options.height)){ - that.fullHeightGap = options.height.split('-')[1]; - options.height = _WIN.height() - that.fullHeightGap; - } - - //初始化一些参数 - that.setInit(); - - //开始插入替代元素 - var othis = options.elem - ,hasRender = othis.next('.' + ELEM_VIEW) - - //主容器 - ,reElem = that.elem = $(laytpl(TPL_MAIN).render({ - VIEW_CLASS: ELEM_VIEW - ,data: options - ,index: that.index //索引 - })); - - options.index = that.index; - that.key = options.id || options.index; - - //生成替代元素 - hasRender[0] && hasRender.remove(); //如果已经渲染,则Rerender - othis.after(reElem); - - //各级容器 - that.layTool = reElem.find(ELEM_TOOL); - that.layBox = reElem.find(ELEM_BOX); - that.layHeader = reElem.find(ELEM_HEADER); - that.layMain = reElem.find(ELEM_MAIN); - that.layBody = reElem.find(ELEM_BODY); - that.layFixed = reElem.find(ELEM_FIXED); - that.layFixLeft = reElem.find(ELEM_FIXL); - that.layFixRight = reElem.find(ELEM_FIXR); - that.layTotal = reElem.find(ELEM_TOTAL); - that.layPage = reElem.find(ELEM_PAGE); - - //初始化工具栏 - that.renderToolbar(); - - //让表格平铺 - that.fullSize(); - - //如果多级表头,则填补表头高度 - if(options.cols.length > 1){ - //补全高度 - var th = that.layFixed.find(ELEM_HEADER).find('th'); - th.height(that.layHeader.height() - 1 - parseFloat(th.css('padding-top')) - parseFloat(th.css('padding-bottom'))); - } - - that.pullData(that.page); //请求数据 - that.events(); //事件 - }; - - //根据列类型,定制化参数 - Class.prototype.initOpts = function(item){ - var that = this - ,options = that.config - ,initWidth = { - checkbox: 48 - ,radio: 48 - ,space: 15 - ,numbers: 40 - }; - - //让 type 参数兼容旧版本 - if(item.checkbox) item.type = "checkbox"; - if(item.space) item.type = "space"; - if(!item.type) item.type = "normal"; - - if(item.type !== "normal"){ - item.unresize = true; - item.width = item.width || initWidth[item.type]; - } - }; - - //初始化一些参数 - Class.prototype.setInit = function(type){ - var that = this - ,options = that.config; - - options.clientWidth = options.width || function(){ //获取容器宽度 - //如果父元素宽度为0(一般为隐藏元素),则继续查找上层元素,直到找到真实宽度为止 - var getWidth = function(parent){ - var width, isNone; - parent = parent || options.elem.parent() - width = parent.width(); - try { - isNone = parent.css('display') === 'none'; - } catch(e){} - if(parent[0] && (!width || isNone)) return getWidth(parent.parent()); - return width; - }; - return getWidth(); - }(); - - if(type === 'width') return options.clientWidth; - - //初始化列参数 - layui.each(options.cols, function(i1, item1){ - layui.each(item1, function(i2, item2){ - - //如果列参数为空,则移除 - if(!item2){ - item1.splice(i2, 1); - return; - } - - item2.key = i1 + '-' + i2; - item2.hide = item2.hide || false; - - //设置列的父列索引 - //如果是组合列,则捕获对应的子列 - if(item2.colGroup || item2.colspan > 1){ - var childIndex = 0; - layui.each(options.cols[i1 + 1], function(i22, item22){ - //如果子列已经被标注为{HAS_PARENT},或者子列累计 colspan 数等于父列定义的 colspan,则跳出当前子列循环 - if(item22.HAS_PARENT || (childIndex > 1 && childIndex == item2.colspan)) return; - - item22.HAS_PARENT = true; - item22.parentKey = i1 + '-' + i2; - - childIndex = childIndex + parseInt(item22.colspan > 1 ? item22.colspan : 1); - }); - item2.colGroup = true; //标注是组合列 - } - - //根据列类型,定制化参数 - that.initOpts(item2); - }); - }); - - }; - - //初始工具栏 - Class.prototype.renderToolbar = function(){ - var that = this - ,options = that.config - - //添加工具栏左侧模板 - var leftDefaultTemp = [ - '
      ' - ,'
      ' - ,'
      ' - ].join('') - ,elemToolTemp = that.layTool.find('.layui-table-tool-temp'); - - if(options.toolbar === 'default'){ - elemToolTemp.html(leftDefaultTemp); - } else if(typeof options.toolbar === 'string'){ - var toolbarHtml = $(options.toolbar).html() || ''; - toolbarHtml && elemToolTemp.html( - laytpl(toolbarHtml).render(options) - ); - } - - //添加工具栏右侧面板 - var layout = { - filter: { - title: '筛选列' - ,layEvent: 'LAYTABLE_COLS' - ,icon: 'layui-icon-cols' - } - ,exports: { - title: '导出' - ,layEvent: 'LAYTABLE_EXPORT' - ,icon: 'layui-icon-export' - } - ,print: { - title: '打印' - ,layEvent: 'LAYTABLE_PRINT' - ,icon: 'layui-icon-print' - } - }, iconElem = []; - - if(typeof options.defaultToolbar === 'object'){ - layui.each(options.defaultToolbar, function(i, item){ - var thisItem = typeof item === 'string' ? layout[item] : item; - if(thisItem){ - iconElem.push('
      ' - +'' - +'
      '); - } - }); - } - that.layTool.find('.layui-table-tool-self').html(iconElem.join('')); - } - - //同步表头父列的相关值 - Class.prototype.setParentCol = function(hide, parentKey){ - var that = this - ,options = that.config - - ,parentTh = that.layHeader.find('th[data-key="'+ options.index +'-'+ parentKey +'"]') //获取父列元素 - ,parentColspan = parseInt(parentTh.attr('colspan')) || 0; - - if(parentTh[0]){ - var arrParentKey = parentKey.split('-') - ,getThisCol = options.cols[arrParentKey[0]][arrParentKey[1]]; - - hide ? parentColspan-- : parentColspan++; - - parentTh.attr('colspan', parentColspan); - parentTh[parentColspan < 1 ? 'addClass' : 'removeClass'](HIDE); - - getThisCol.colspan = parentColspan; //同步 colspan 参数 - getThisCol.hide = parentColspan < 1; //同步 hide 参数 - - //递归,继续往上查询是否有父列 - var nextParentKey = parentTh.data('parentkey'); - nextParentKey && that.setParentCol(hide, nextParentKey); - } - }; - - //多级表头补丁 - Class.prototype.setColsPatch = function(){ - var that = this - ,options = that.config - - //同步表头父列的相关值 - layui.each(options.cols, function(i1, item1){ - layui.each(item1, function(i2, item2){ - if(item2.hide){ - that.setParentCol(item2.hide, item2.parentKey); - } - }); - }); - }; - - //动态分配列宽 - Class.prototype.setColsWidth = function(){ - var that = this - ,options = that.config - ,colNums = 0 //列个数 - ,autoColNums = 0 //自动列宽的列个数 - ,autoWidth = 0 //自动列分配的宽度 - ,countWidth = 0 //所有列总宽度和 - ,cntrWidth = that.setInit('width'); - - //统计列个数 - that.eachCols(function(i, item){ - item.hide || colNums++; - }); - - //减去边框差和滚动条宽 - cntrWidth = cntrWidth - function(){ - return (options.skin === 'line' || options.skin === 'nob') ? 2 : colNums + 1; - }() - that.getScrollWidth(that.layMain[0]) - 1; - - //计算自动分配的宽度 - var getAutoWidth = function(back){ - //遍历所有列 - layui.each(options.cols, function(i1, item1){ - layui.each(item1, function(i2, item2){ - var width = 0 - ,minWidth = item2.minWidth || options.cellMinWidth; //最小宽度 - - if(!item2){ - item1.splice(i2, 1); - return; - } - - if(item2.colGroup || item2.hide) return; - - if(!back){ - width = item2.width || 0; - if(/\d+%$/.test(width)){ //列宽为百分比 - width = Math.floor((parseFloat(width) / 100) * cntrWidth); - width < minWidth && (width = minWidth); - } else if(!width){ //列宽未填写 - item2.width = width = 0; - autoColNums++; - } - } else if(autoWidth && autoWidth < minWidth){ - autoColNums--; - width = minWidth; - } - - if(item2.hide) width = 0; - countWidth = countWidth + width; - }); - }); - - //如果未填充满,则将剩余宽度平分 - (cntrWidth > countWidth && autoColNums) && ( - autoWidth = (cntrWidth - countWidth) / autoColNums - ); - } - - getAutoWidth(); - getAutoWidth(true); //重新检测分配的宽度是否低于最小列宽 - - //记录自动列数 - that.autoColNums = autoColNums; - - //设置列宽 - that.eachCols(function(i3, item3){ - var minWidth = item3.minWidth || options.cellMinWidth; - if(item3.colGroup || item3.hide) return; - - //给位分配宽的列平均分配宽 - if(item3.width === 0){ - that.getCssRule(options.index +'-'+ item3.key, function(item){ - item.style.width = Math.floor(autoWidth >= minWidth ? autoWidth : minWidth) + 'px'; - }); - } - - //给设定百分比的列分配列宽 - else if(/\d+%$/.test(item3.width)){ - that.getCssRule(options.index +'-'+ item3.key, function(item){ - item.style.width = Math.floor((parseFloat(item3.width) / 100) * cntrWidth) + 'px'; - }); - } - }); - - //填补 Math.floor 造成的数差 - var patchNums = that.layMain.width() - that.getScrollWidth(that.layMain[0]) - - that.layMain.children('table').outerWidth(); - - if(that.autoColNums && patchNums >= -colNums && patchNums <= colNums){ - var getEndTh = function(th){ - var field; - th = th || that.layHeader.eq(0).find('thead th:last-child') - field = th.data('field'); - if(!field && th.prev()[0]){ - return getEndTh(th.prev()) - } - return th - } - ,th = getEndTh() - ,key = th.data('key'); - - that.getCssRule(key, function(item){ - var width = item.style.width || th.outerWidth(); - item.style.width = (parseFloat(width) + patchNums) + 'px'; - - //二次校验,如果仍然出现横向滚动条(通常是 1px 的误差导致) - if(that.layMain.height() - that.layMain.prop('clientHeight') > 0){ - item.style.width = (parseFloat(item.style.width) - 1) + 'px'; - } - }); - } - - that.loading(!0); - }; - - //重置表格尺寸/结构 - Class.prototype.resize = function(){ - var that = this; - that.fullSize(); //让表格铺满 - that.setColsWidth(); //自适应列宽 - that.scrollPatch(); //滚动条补丁 - }; - - //表格重载 - Class.prototype.reload = function(options, deep){ - var that = this; - - options = options || {}; - delete that.haveInit; - - //防止数组深度合并 - layui.each(options, function(key, item){ - if(layui._typeof(item) === 'array') delete that.config[key]; - }); - - //对参数进行深度或浅扩展 - that.config = $.extend(deep, {}, that.config, options); - - //执行渲染 - that.render(); - }; - - //异常提示 - Class.prototype.errorView = function(html){ - var that = this - ,elemNone = that.layMain.find('.'+ NONE) - ,layNone = $('
      '+ (html || 'Error') +'
      '); - - if(elemNone[0]){ - that.layNone.remove(); - elemNone.remove(); - } - - that.layFixed.addClass(HIDE); - that.layMain.find('tbody').html(''); - - that.layMain.append(that.layNone = layNone); - - table.cache[that.key] = []; //格式化缓存数据 - }; - - //页码 - Class.prototype.page = 1; - - //获得数据 - Class.prototype.pullData = function(curr){ - var that = this - ,options = that.config - ,request = options.request - ,response = options.response - ,sort = function(){ - if(typeof options.initSort === 'object'){ - that.sort(options.initSort.field, options.initSort.type); - } - }; - - that.startTime = new Date().getTime(); //渲染开始时间 - - if(options.url){ //Ajax请求 - var params = {}; - params[request.pageName] = curr; - params[request.limitName] = options.limit; - - //参数 - var data = $.extend(params, options.where); - if(options.contentType && options.contentType.indexOf("application/json") == 0){ //提交 json 格式 - data = JSON.stringify(data); - } - - that.loading(); - - $.ajax({ - type: options.method || 'get' - ,url: options.url - ,contentType: options.contentType - ,data: data - ,dataType: 'json' - ,headers: options.headers || {} - ,success: function(res){ - //如果有数据解析的回调,则获得其返回的数据 - if(typeof options.parseData === 'function'){ - res = options.parseData(res) || res; - } - //检查数据格式是否符合规范 - if(res[response.statusName] != response.statusCode){ - that.renderForm(); - that.errorView( - res[response.msgName] || - ('返回的数据不符合规范,正确的成功状态码应为:"'+ response.statusName +'": '+ response.statusCode) - ); - } else { - that.renderData(res, curr, res[response.countName]), sort(); - options.time = (new Date().getTime() - that.startTime) + ' ms'; //耗时(接口请求+视图渲染) - } - that.setColsWidth(); - typeof options.done === 'function' && options.done(res, curr, res[response.countName]); - } - ,error: function(e, msg){ - that.errorView('请求异常,错误提示:'+ msg); - - that.renderForm(); - that.setColsWidth(); - - typeof options.error === 'function' && options.error(e, msg); - } - }); - } else if(layui._typeof(options.data) === 'array'){ //已知数据 - var res = {} - ,startLimit = curr*options.limit - options.limit - - res[response.dataName] = options.data.concat().splice(startLimit, options.limit); - res[response.countName] = options.data.length; - - //记录合计行数据 - if(typeof options.totalRow === 'object'){ - res[response.totalRowName] = $.extend({}, options.totalRow); - } - - that.renderData(res, curr, res[response.countName]), sort(); - that.setColsWidth(); - typeof options.done === 'function' && options.done(res, curr, res[response.countName]); - } - }; - - //遍历表头 - Class.prototype.eachCols = function(callback){ - var that = this; - table.eachCols(null, callback, that.config.cols); - return that; - }; - - //数据渲染 - Class.prototype.renderData = function(res, curr, count, sort){ - var that = this - ,options = that.config - ,data = res[options.response.dataName] || [] //列表数据 - ,totalRowData = res[options.response.totalRowName] //合计行数据 - ,trs = [] - ,trs_fixed = [] - ,trs_fixed_r = [] - - //渲染视图 - ,render = function(){ //后续性能提升的重点 - var thisCheckedRowIndex; - if(!sort && that.sortKey){ - return that.sort(that.sortKey.field, that.sortKey.sort, true); - } - layui.each(data, function(i1, item1){ - var tds = [], tds_fixed = [], tds_fixed_r = [] - ,numbers = i1 + options.limit*(curr - 1) + 1; //序号 - - //若数据项为空数组,则不往下执行(因为删除数据时,会将原有数据设置为 []) - if(layui._typeof(item1) === 'array' && item1.length === 0) return; - - //记录下标索引,用于恢复排序 - if(!sort){ - item1[table.config.indexName] = i1; - } - - //遍历表头 - that.eachCols(function(i3, item3){ - var field = item3.field || i3 - ,key = options.index + '-' + item3.key - ,content = item1[field]; - - if(content === undefined || content === null) content = ''; - if(item3.colGroup) return; - - //td内容 - var td = ['' - ,'
      ' + function(){ - var tplData = $.extend(true, { - LAY_INDEX: numbers - ,LAY_COL: item3 - }, item1) - ,checkName = table.config.checkName; - - //渲染不同风格的列 - switch(item3.type){ - case 'checkbox': - return ''; - break; - case 'radio': - if(tplData[checkName]){ - thisCheckedRowIndex = i1; - } - return ''; - break; - case 'numbers': - return numbers; - break; - }; - - //解析工具列模板 - if(item3.toolbar){ - return laytpl($(item3.toolbar).html()||'').render(tplData); - } - return parseTempData.call(that, item3, content, tplData); - }() - ,'
      '].join(''); - - tds.push(td); - if(item3.fixed && item3.fixed !== 'right') tds_fixed.push(td); - if(item3.fixed === 'right') tds_fixed_r.push(td); - }); - - trs.push(''+ tds.join('') + ''); - trs_fixed.push(''+ tds_fixed.join('') + ''); - trs_fixed_r.push(''+ tds_fixed_r.join('') + ''); - }); - - that.layBody.scrollTop(0); - that.layMain.find('.'+ NONE).remove(); - that.layMain.find('tbody').html(trs.join('')); - that.layFixLeft.find('tbody').html(trs_fixed.join('')); - that.layFixRight.find('tbody').html(trs_fixed_r.join('')); - - that.renderForm(); - typeof thisCheckedRowIndex === 'number' && that.setThisRowChecked(thisCheckedRowIndex); - that.syncCheckAll(); - - //滚动条补丁 - that.haveInit ? that.scrollPatch() : setTimeout(function(){ - that.scrollPatch(); - }, 50); - that.haveInit = true; - - layer.close(that.tipsIndex); - - //同步表头父列的相关值 - options.HAS_SET_COLS_PATCH || that.setColsPatch(); - options.HAS_SET_COLS_PATCH = true; - }; - - table.cache[that.key] = data; //记录数据 - - //显示隐藏分页栏 - that.layPage[(count == 0 || (data.length === 0 && curr == 1)) ? 'addClass' : 'removeClass'](HIDE); - - //如果无数据 - if(data.length === 0){ - that.renderForm(); - return that.errorView(options.text.none); - } else { - that.layFixed.removeClass(HIDE); - } - - //如果执行初始排序 - if(sort){ - return render(); - } - - //正常初始化数据渲染 - render(); //渲染数据 - that.renderTotal(data, totalRowData); //数据合计 - - //同步分页状态 - if(options.page){ - options.page = $.extend({ - elem: 'layui-table-page' + options.index - ,count: count - ,limit: options.limit - ,limits: options.limits || [10,20,30,40,50,60,70,80,90] - ,groups: 3 - ,layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'] - ,prev: '' - ,next: '' - ,jump: function(obj, first){ - if(!first){ - //分页本身并非需要做以下更新,下面参数的同步,主要是因为其它处理统一用到了它们 - //而并非用的是 options.page 中的参数(以确保分页未开启的情况仍能正常使用) - that.page = obj.curr; //更新页码 - options.limit = obj.limit; //更新每页条数 - - that.pullData(obj.curr); - } - } - }, options.page); - options.page.count = count; //更新总条数 - laypage.render(options.page); - } - }; - - //数据合计行 - Class.prototype.renderTotal = function(data, totalRowData){ - var that = this - ,options = that.config - ,totalNums = {}; - - if(!options.totalRow) return; - - layui.each(data, function(i1, item1){ - //若数据项为空数组,则不往下执行(因为删除数据时,会将原有数据设置为 []) - if(layui._typeof(item1) === 'array' && item1.length === 0) return; - - that.eachCols(function(i3, item3){ - var field = item3.field || i3 - ,content = item1[field]; - - if(item3.totalRow){ - totalNums[field] = (totalNums[field] || 0) + (parseFloat(content) || 0); - } - }); - }); - - that.dataTotal = {}; - - var tds = []; - that.eachCols(function(i3, item3){ - var field = item3.field || i3; - - //td 内容 - var content = function(){ - var text = item3.totalRowText || '' - ,thisTotalNum = parseFloat(totalNums[field]).toFixed(2) - ,tplData = {} - ,getContent; - - tplData[field] = thisTotalNum; - - //获取自动计算的合并内容 - getContent = item3.totalRow ? (parseTempData.call(that, item3, thisTotalNum, tplData) || text) : text; - - //如果直接传入了合计行数据,则不输出自动计算的结果 - return totalRowData ? (totalRowData[item3.field] || getContent) : getContent; - }() - ,td = ['' - ,'
      ' + function(){ - var totalRow = item3.totalRow || options.totalRow; - //如果 totalRow 参数为字符类型,则解析为自定义模版 - if(typeof totalRow === 'string'){ - return laytpl(totalRow).render($.extend({ - TOTAL_NUMS: content - }, item3)) - } - return content; - }() - ,'
      '].join(''); - - item3.field && (that.dataTotal[field] = content); - tds.push(td); - }); - - that.layTotal.find('tbody').html('' + tds.join('') + ''); - }; - - //找到对应的列元素 - Class.prototype.getColElem = function(parent, key){ - var that = this - ,options = that.config; - return parent.eq(0).find('.laytable-cell-'+ (options.index + '-' + key) + ':eq(0)'); - }; - - //渲染表单 - Class.prototype.renderForm = function(type){ - form.render(type, 'LAY-table-'+ this.index); - }; - - //标记当前行选中状态 - Class.prototype.setThisRowChecked = function(index){ - var that = this - ,options = that.config - ,ELEM_CLICK = 'layui-table-click' - ,tr = that.layBody.find('tr[data-index="'+ index +'"]'); - - tr.addClass(ELEM_CLICK).siblings('tr').removeClass(ELEM_CLICK); - }; - - //数据排序 - Class.prototype.sort = function(th, type, pull, formEvent){ - var that = this - ,field - ,res = {} - ,options = that.config - ,filter = options.elem.attr('lay-filter') - ,data = table.cache[that.key], thisData; - - //字段匹配 - if(typeof th === 'string'){ - field = th; - that.layHeader.find('th').each(function(i, item){ - var othis = $(this) - ,_field = othis.data('field'); - if(_field === th){ - th = othis; - field = _field; - return false; - } - }); - } - - try { - var field = field || th.data('field') - ,key = th.data('key'); - - //如果欲执行的排序已在状态中,则不执行渲染 - if(that.sortKey && !pull){ - if(field === that.sortKey.field && type === that.sortKey.sort){ - return; - } - } - - var elemSort = that.layHeader.find('th .laytable-cell-'+ key).find(ELEM_SORT); - that.layHeader.find('th').find(ELEM_SORT).removeAttr('lay-sort'); //清除其它标题排序状态 - elemSort.attr('lay-sort', type || null); - that.layFixed.find('th') - } catch(e){ - hint.error('Table modules: sort field \''+ field +'\' not matched'); - } - - //记录排序索引和类型 - that.sortKey = { - field: field - ,sort: type - }; - - //默认为前端自动排序。如果否,则需自主排序(通常为服务端处理好排序) - if(options.autoSort){ - if(type === 'asc'){ //升序 - thisData = layui.sort(data, field); - } else if(type === 'desc'){ //降序 - thisData = layui.sort(data, field, true); - } else { //清除排序 - thisData = layui.sort(data, table.config.indexName); - delete that.sortKey; - } - } - - res[options.response.dataName] = thisData || data; - that.renderData(res, that.page, that.count, true); - - if(formEvent){ - layui.event.call(th, MOD_NAME, 'sort('+ filter +')', { - field: field - ,type: type - }); - } - }; - - //请求loading - Class.prototype.loading = function(hide){ - var that = this - ,options = that.config; - if(options.loading){ - if(hide){ - that.layInit && that.layInit.remove(); - delete that.layInit; - that.layBox.find(ELEM_INIT).remove(); - } else { - that.layInit = $(['
      ' - ,'' - ,'
      '].join('')); - that.layBox.append(that.layInit); - } - } - }; - - //同步选中值状态 - Class.prototype.setCheckData = function(index, checked){ - var that = this - ,options = that.config - ,thisData = table.cache[that.key]; - if(!thisData[index]) return; - if(layui._typeof(thisData[index]) === 'array') return; - thisData[index][options.checkName] = checked; - }; - - //同步全选按钮状态 - Class.prototype.syncCheckAll = function(){ - var that = this - ,options = that.config - ,checkAllElem = that.layHeader.find('input[name="layTableCheckbox"]') - ,syncColsCheck = function(checked){ - that.eachCols(function(i, item){ - if(item.type === 'checkbox'){ - item[options.checkName] = checked; - } - }); - return checked; - }; - - if(!checkAllElem[0]) return; - - if(table.checkStatus(that.key).isAll){ - if(!checkAllElem[0].checked){ - checkAllElem.prop('checked', true); - that.renderForm('checkbox'); - } - syncColsCheck(true); - } else { - if(checkAllElem[0].checked){ - checkAllElem.prop('checked', false); - that.renderForm('checkbox'); - } - syncColsCheck(false); - } - }; - - //获取cssRule - Class.prototype.getCssRule = function(key, callback){ - var that = this - ,style = that.elem.find('style')[0] - ,sheet = style.sheet || style.styleSheet || {} - ,rules = sheet.cssRules || sheet.rules; - layui.each(rules, function(i, item){ - if(item.selectorText === ('.laytable-cell-'+ key)){ - return callback(item), true; - } - }); - }; - - //让表格铺满 - Class.prototype.fullSize = function(){ - var that = this - ,options = that.config - ,height = options.height, bodyHeight; - - if(that.fullHeightGap){ - height = _WIN.height() - that.fullHeightGap; - if(height < 135) height = 135; - that.elem.css('height', height); - } - - if(!height) return; - - //减去列头区域的高度 - bodyHeight = parseFloat(height) - (that.layHeader.outerHeight() || 38); //此处的数字常量是为了防止容器处在隐藏区域无法获得高度的问题,暂时只对默认尺寸的表格做支持。 - - //减去工具栏的高度 - if(options.toolbar){ - bodyHeight = bodyHeight - (that.layTool.outerHeight() || 50); - } - - //减去统计朗的高度 - if(options.totalRow){ - bodyHeight = bodyHeight - (that.layTotal.outerHeight() || 40); - } - - //减去分页栏的高度 - if(options.page){ - bodyHeight = bodyHeight - (that.layPage.outerHeight() || 41); - } - - that.layMain.css('height', bodyHeight - 2); - }; - - //获取滚动条宽度 - Class.prototype.getScrollWidth = function(elem){ - var width = 0; - if(elem){ - width = elem.offsetWidth - elem.clientWidth; - } else { - elem = document.createElement('div'); - elem.style.width = '100px'; - elem.style.height = '100px'; - elem.style.overflowY = 'scroll'; - - document.body.appendChild(elem); - width = elem.offsetWidth - elem.clientWidth; - document.body.removeChild(elem); - } - return width; - }; - - //滚动条补丁 - Class.prototype.scrollPatch = function(){ - var that = this - ,layMainTable = that.layMain.children('table') - ,scollWidth = that.layMain.width() - that.layMain.prop('clientWidth') //纵向滚动条宽度 - ,scollHeight = that.layMain.height() - that.layMain.prop('clientHeight') //横向滚动条高度 - ,getScrollWidth = that.getScrollWidth(that.layMain[0]) //获取主容器滚动条宽度,如果有的话 - ,outWidth = layMainTable.outerWidth() - that.layMain.width() //表格内容器的超出宽度 - - //添加补丁 - ,addPatch = function(elem){ - if(scollWidth && scollHeight){ - elem = elem.eq(0); - if(!elem.find('.layui-table-patch')[0]){ - var patchElem = $('
      '); //补丁元素 - patchElem.find('div').css({ - width: scollWidth - }); - elem.find('tr').append(patchElem); - } - } else { - elem.find('.layui-table-patch').remove(); - } - } - - addPatch(that.layHeader); - addPatch(that.layTotal); - - //固定列区域高度 - var mainHeight = that.layMain.height() - ,fixHeight = mainHeight - scollHeight; - that.layFixed.find(ELEM_BODY).css('height', layMainTable.height() >= fixHeight ? fixHeight : 'auto'); - - //表格宽度小于容器宽度时,隐藏固定列 - that.layFixRight[outWidth > 0 ? 'removeClass' : 'addClass'](HIDE); - - //操作栏 - that.layFixRight.css('right', scollWidth - 1); - }; - - //事件处理 - Class.prototype.events = function(){ - var that = this - ,options = that.config - ,_BODY = $('body') - ,dict = {} - ,th = that.layHeader.find('th') - ,resizing - ,ELEM_CELL = '.layui-table-cell' - ,filter = options.elem.attr('lay-filter'); - - //工具栏操作事件 - that.layTool.on('click', '*[lay-event]', function(e){ - var othis = $(this) - ,events = othis.attr('lay-event') - ,openPanel = function(sets){ - var list = $(sets.list) - ,panel = $('
        '); - - panel.html(list); - - //限制最大高度 - if(options.height){ - panel.css('max-height', options.height - (that.layTool.outerHeight() || 50)); - } - - //插入元素 - othis.find('.layui-table-tool-panel')[0] || othis.append(panel); - that.renderForm(); - - panel.on('click', function(e){ - layui.stope(e); - }); - - sets.done && sets.done(panel, list) - }; - - layui.stope(e); - _DOC.trigger('table.tool.panel.remove'); - layer.close(that.tipsIndex); - - switch(events){ - case 'LAYTABLE_COLS': //筛选列 - openPanel({ - list: function(){ - var lis = []; - that.eachCols(function(i, item){ - if(item.field && item.type == 'normal'){ - lis.push('
      • '); - } - }); - return lis.join(''); - }() - ,done: function(){ - form.on('checkbox(LAY_TABLE_TOOL_COLS)', function(obj){ - var othis = $(obj.elem) - ,checked = this.checked - ,key = othis.data('key') - ,parentKey = othis.data('parentkey'); - - layui.each(options.cols, function(i1, item1){ - layui.each(item1, function(i2, item2){ - if(i1+ '-'+ i2 === key){ - var hide = item2.hide; - - //同步勾选列的 hide 值和隐藏样式 - item2.hide = !checked; - that.elem.find('*[data-key="'+ options.index +'-'+ key +'"]') - [checked ? 'removeClass' : 'addClass'](HIDE); - - //根据列的显示隐藏,同步多级表头的父级相关属性值 - if(hide != item2.hide){ - that.setParentCol(!checked, parentKey); - } - - //重新适配尺寸 - that.resize(); - } - }); - }); - }); - } - }); - break; - case 'LAYTABLE_EXPORT': //导出 - if(device.ie){ - layer.tips('导出功能不支持 IE,请用 Chrome 等高级浏览器导出', this, { - tips: 3 - }) - } else { - openPanel({ - list: function(){ - return [ - '
      • 导出到 Csv 文件
      • ' - ,'
      • 导出到 Excel 文件
      • ' - ].join('') - }() - ,done: function(panel, list){ - list.on('click', function(){ - var type = $(this).data('type') - table.exportFile.call(that, options.id, null, type); - }); - } - }); - } - break; - case 'LAYTABLE_PRINT': //打印 - var printWin = window.open('打印窗口', '_blank') - ,style = [''].join('') - ,html = $(that.layHeader.html()); //输出表头 - - html.append(that.layMain.find('table').html()); //输出表体 - html.append(that.layTotal.find('table').html()) //输出合计行 - - html.find('th.layui-table-patch').remove(); //移除补丁 - html.find('.layui-table-col-special').remove(); //移除特殊列 - - printWin.document.write(style + html.prop('outerHTML')); - printWin.document.close(); - printWin.print(); - printWin.close(); - break; - } - - layui.event.call(this, MOD_NAME, 'toolbar('+ filter +')', $.extend({ - event: events - ,config: options - },{})); - }); - - //拖拽调整宽度 - th.on('mousemove', function(e){ - var othis = $(this) - ,oLeft = othis.offset().left - ,pLeft = e.clientX - oLeft; - if(othis.data('unresize') || dict.resizeStart){ - return; - } - dict.allowResize = othis.width() - pLeft <= 10; //是否处于拖拽允许区域 - _BODY.css('cursor', (dict.allowResize ? 'col-resize' : '')); - }).on('mouseleave', function(){ - var othis = $(this); - if(dict.resizeStart) return; - _BODY.css('cursor', ''); - }).on('mousedown', function(e){ - var othis = $(this); - if(dict.allowResize){ - var key = othis.data('key'); - e.preventDefault(); - dict.resizeStart = true; //开始拖拽 - dict.offset = [e.clientX, e.clientY]; //记录初始坐标 - - that.getCssRule(key, function(item){ - var width = item.style.width || othis.outerWidth(); - dict.rule = item; - dict.ruleWidth = parseFloat(width); - dict.minWidth = othis.data('minwidth') || options.cellMinWidth; - }); - } - }); - - //拖拽中 - _DOC.on('mousemove', function(e){ - if(dict.resizeStart){ - e.preventDefault(); - if(dict.rule){ - var setWidth = dict.ruleWidth + e.clientX - dict.offset[0]; - if(setWidth < dict.minWidth) setWidth = dict.minWidth; - dict.rule.style.width = setWidth + 'px'; - layer.close(that.tipsIndex); - } - resizing = 1 - } - }).on('mouseup', function(e){ - if(dict.resizeStart){ - dict = {}; - _BODY.css('cursor', ''); - that.scrollPatch(); - } - if(resizing === 2){ - resizing = null; - } - }); - - //排序 - th.on('click', function(e){ - var othis = $(this) - ,elemSort = othis.find(ELEM_SORT) - ,nowType = elemSort.attr('lay-sort') - ,type; - - if(!elemSort[0] || resizing === 1) return resizing = 2; - - if(nowType === 'asc'){ - type = 'desc'; - } else if(nowType === 'desc'){ - type = null; - } else { - type = 'asc'; - } - that.sort(othis, type, null, true); - }).find(ELEM_SORT+' .layui-edge ').on('click', function(e){ - var othis = $(this) - ,index = othis.index() - ,field = othis.parents('th').eq(0).data('field') - layui.stope(e); - if(index === 0){ - that.sort(field, 'asc', null, true); - } else { - that.sort(field, 'desc', null, true); - } - }); - - //数据行中的事件返回的公共对象成员 - var commonMember = function(sets){ - var othis = $(this) - ,index = othis.parents('tr').eq(0).data('index') - ,tr = that.layBody.find('tr[data-index="'+ index +'"]') - ,data = table.cache[that.key] || []; - - - data = data[index] || {}; - - return $.extend({ - tr: tr //行元素 - ,data: table.clearCacheKey(data) //当前行数据 - ,del: function(){ //删除行数据 - table.cache[that.key][index] = []; - tr.remove(); - that.scrollPatch(); - } - ,update: function(fields){ //修改行数据 - fields = fields || {}; - layui.each(fields, function(key, value){ - if(key in data){ - var templet, td = tr.children('td[data-field="'+ key +'"]'); - data[key] = value; - that.eachCols(function(i, item2){ - if(item2.field == key && item2.templet){ - templet = item2.templet; - } - }); - td.children(ELEM_CELL).html(parseTempData.call(that, { - templet: templet - }, value, data)); - td.data('content', value); - } - }); - } - }, sets); - }; - - //复选框选择 - that.elem.on('click', 'input[name="layTableCheckbox"]+', function(){ //替代元素的 click 事件 - var checkbox = $(this).prev() - ,childs = that.layBody.find('input[name="layTableCheckbox"]') - ,index = checkbox.parents('tr').eq(0).data('index') - ,checked = checkbox[0].checked - ,isAll = checkbox.attr('lay-filter') === 'layTableAllChoose'; - - //全选 - if(isAll){ - childs.each(function(i, item){ - item.checked = checked; - that.setCheckData(i, checked); - }); - that.syncCheckAll(); - that.renderForm('checkbox'); - } else { - that.setCheckData(index, checked); - that.syncCheckAll(); - } - - layui.event.call(checkbox[0], MOD_NAME, 'checkbox('+ filter +')', commonMember.call(checkbox[0], { - checked: checked - ,type: isAll ? 'all' : 'one' - })); - }); - - //单选框选择 - that.elem.on('click', 'input[lay-type="layTableRadio"]+', function(){ - var radio = $(this).prev() - ,checked = radio[0].checked - ,thisData = table.cache[that.key] - ,index = radio.parents('tr').eq(0).data('index'); - - //重置数据单选属性 - layui.each(thisData, function(i, item){ - if(index === i){ - item[options.checkName] = true; - } else { - delete item[options.checkName]; - } - }); - that.setThisRowChecked(index); - - layui.event.call(this, MOD_NAME, 'radio('+ filter +')', commonMember.call(this, { - checked: checked - })); - }); - - //行事件 - that.layBody.on('mouseenter', 'tr', function(){ //鼠标移入行 - var othis = $(this) - ,index = othis.index(); - if(othis.data('off')) return; //不触发事件 - that.layBody.find('tr:eq('+ index +')').addClass(ELEM_HOVER) - }).on('mouseleave', 'tr', function(){ //鼠标移出行 - var othis = $(this) - ,index = othis.index(); - if(othis.data('off')) return; //不触发事件 - that.layBody.find('tr:eq('+ index +')').removeClass(ELEM_HOVER) - }).on('click', 'tr', function(){ //单击行 - setRowEvent.call(this, 'row'); - }).on('dblclick', 'tr', function(){ //双击行 - setRowEvent.call(this, 'rowDouble'); - }); - - //创建行单击、双击事件 - var setRowEvent = function(eventType){ - var othis = $(this); - if(othis.data('off')) return; //不触发事件 - layui.event.call(this, - MOD_NAME, eventType + '('+ filter +')' - ,commonMember.call(othis.children('td')[0]) - ); - }; - - //单元格编辑 - that.layBody.on('change', '.'+ELEM_EDIT, function(){ - var othis = $(this) - ,value = this.value - ,field = othis.parent().data('field') - ,index = othis.parents('tr').eq(0).data('index') - ,data = table.cache[that.key][index]; - - data[field] = value; //更新缓存中的值 - - layui.event.call(this, MOD_NAME, 'edit('+ filter +')', commonMember.call(this, { - value: value - ,field: field - })); - }).on('blur', '.'+ELEM_EDIT, function(){ - var templet - ,othis = $(this) - ,thisElem = this - ,field = othis.parent().data('field') - ,index = othis.parents('tr').eq(0).data('index') - ,data = table.cache[that.key][index]; - that.eachCols(function(i, item){ - if(item.field == field && item.templet){ - templet = item.templet; - } - }); - othis.siblings(ELEM_CELL).html(function(value){ - return parseTempData.call(that, { - templet: templet - }, value, data); - }(thisElem.value)); - othis.parent().data('content', thisElem.value); - othis.remove(); - }); - - //单元格单击事件 - that.layBody.on('click', 'td', function(e){ - var othis = $(this) - ,field = othis.data('field') - ,editType = othis.data('edit') - ,elemCell = othis.children(ELEM_CELL); - - if(othis.data('off')) return; //不触发事件 - - //显示编辑表单 - if(editType){ - var input = $(''); - input[0].value = othis.data('content') || elemCell.text(); - othis.find('.'+ELEM_EDIT)[0] || othis.append(input); - input.focus(); - layui.stope(e); - return; - } - }).on('mouseenter', 'td', function(){ - gridExpand.call(this) - }).on('mouseleave', 'td', function(){ - gridExpand.call(this, 'hide'); - }); - - //单元格展开图标 - var ELEM_GRID = 'layui-table-grid', ELEM_GRID_DOWN = 'layui-table-grid-down', ELEM_GRID_PANEL = 'layui-table-grid-panel' - ,gridExpand = function(hide){ - var othis = $(this) - ,elemCell = othis.children(ELEM_CELL); - - if(othis.data('off')) return; //不触发事件 - - if(hide){ - othis.find('.layui-table-grid-down').remove(); - } else if(elemCell.prop('scrollWidth') > elemCell.outerWidth()){ - if(elemCell.find('.'+ ELEM_GRID_DOWN)[0]) return; - othis.append('
        '); - } - }; - - //单元格展开事件 - that.layBody.on('click', '.'+ ELEM_GRID_DOWN, function(e){ - var othis = $(this) - ,td = othis.parent() - ,elemCell = td.children(ELEM_CELL); - - that.tipsIndex = layer.tips([ - '
        ' - ,elemCell.html() - ,'
        ' - ,'' - ].join(''), elemCell[0], { - tips: [3, ''] - ,time: -1 - ,anim: -1 - ,maxWidth: (device.ios || device.android) ? 300 : that.elem.width()/2 - ,isOutAnim: false - ,skin: 'layui-table-tips' - ,success: function(layero, index){ - layero.find('.layui-table-tips-c').on('click', function(){ - layer.close(index); - }); - } - }); - - layui.stope(e); - }); - - //行工具条操作事件 - that.layBody.on('click', '*[lay-event]', function(){ - var othis = $(this) - ,index = othis.parents('tr').eq(0).data('index'); - layui.event.call(this, MOD_NAME, 'tool('+ filter +')', commonMember.call(this, { - event: othis.attr('lay-event') - })); - that.setThisRowChecked(index); - }); - - //同步滚动条 - that.layMain.on('scroll', function(){ - var othis = $(this) - ,scrollLeft = othis.scrollLeft() - ,scrollTop = othis.scrollTop(); - - that.layHeader.scrollLeft(scrollLeft); - that.layTotal.scrollLeft(scrollLeft); - that.layFixed.find(ELEM_BODY).scrollTop(scrollTop); - - layer.close(that.tipsIndex); - }); - - //自适应 - _WIN.on('resize', function(){ - that.resize(); - }); - }; - - //一次性事件 - ;(function(){ - //全局点击 - _DOC.on('click', function(){ - _DOC.trigger('table.remove.tool.panel'); - }); - - //工具面板移除事件 - _DOC.on('table.remove.tool.panel', function(){ - $('.layui-table-tool-panel').remove(); - }); - })(); - - //初始化 - table.init = function(filter, settings){ - settings = settings || {}; - var that = this - ,inst = null - ,elemTable = filter ? $('table[lay-filter="'+ filter +'"]') : $(ELEM + '[lay-data]') - ,errorTips = 'Table element property lay-data configuration item has a syntax error: '; - - //遍历数据表格 - elemTable.each(function(){ - var othis = $(this), tableData = othis.attr('lay-data'); - - try { - tableData = new Function('return '+ tableData)(); - } catch(e) { - hint.error(errorTips + tableData, 'error') - } - - var cols = [], options = $.extend({ - elem: this - ,cols: [] - ,data: [] - ,skin: othis.attr('lay-skin') //风格 - ,size: othis.attr('lay-size') //尺寸 - ,even: typeof othis.attr('lay-even') === 'string' //偶数行背景 - }, table.config, settings, tableData); - - filter && othis.hide(); - - //获取表头数据 - othis.find('thead>tr').each(function(i){ - options.cols[i] = []; - $(this).children().each(function(ii){ - var th = $(this), itemData = th.attr('lay-data'); - - try{ - itemData = new Function('return '+ itemData)(); - } catch(e){ - return hint.error(errorTips + itemData) - } - - var row = $.extend({ - title: th.text() - ,colspan: th.attr('colspan') || 0 //列单元格 - ,rowspan: th.attr('rowspan') || 0 //行单元格 - }, itemData); - - if(row.colspan < 2) cols.push(row); - options.cols[i].push(row); - }); - }); - - //获取表体数据 - othis.find('tbody>tr').each(function(i1){ - var tr = $(this), row = {}; - //如果定义了字段名 - tr.children('td').each(function(i2, item2){ - var td = $(this) - ,field = td.data('field'); - if(field){ - return row[field] = td.html(); - } - }); - //如果未定义字段名 - layui.each(cols, function(i3, item3){ - var td = tr.children('td').eq(i3); - row[item3.field] = td.html(); - }); - options.data[i1] = row; - }); - - //执行渲染 - table.render(options); - }); - - return that; - }; - - //记录所有实例 - thisTable.that = {}; //记录所有实例对象 - thisTable.config = {}; //记录所有实例配置项 - - //遍历表头 - table.eachCols = function(id, callback, cols){ - var config = thisTable.config[id] || {} - ,arrs = [], index = 0; - - cols = $.extend(true, [], cols || config.cols); - - //重新整理表头结构 - layui.each(cols, function(i1, item1){ - layui.each(item1, function(i2, item2){ - - //如果是组合列,则捕获对应的子列 - if(item2.colGroup){ - var childIndex = 0; - index++ - item2.CHILD_COLS = []; - - layui.each(cols[i1 + 1], function(i22, item22){ - //如果子列已经被标注为{PARENT_COL_INDEX},或者子列累计 colspan 数等于父列定义的 colspan,则跳出当前子列循环 - if(item22.PARENT_COL_INDEX || (childIndex > 1 && childIndex == item2.colspan)) return; - - item22.PARENT_COL_INDEX = index; - - item2.CHILD_COLS.push(item22); - childIndex = childIndex + parseInt(item22.colspan > 1 ? item22.colspan : 1); - }); - } - - if(item2.PARENT_COL_INDEX) return; //如果是子列,则不进行追加,因为已经存储在父列中 - arrs.push(item2) - }); - }); - - //重新遍历列,如果有子列,则进入递归 - var eachArrs = function(obj){ - layui.each(obj || arrs, function(i, item){ - if(item.CHILD_COLS) return eachArrs(item.CHILD_COLS); - typeof callback === 'function' && callback(i, item); - }); - }; - - eachArrs(); - }; - - //表格选中状态 - table.checkStatus = function(id){ - var nums = 0 - ,invalidNum = 0 - ,arr = [] - ,data = table.cache[id] || []; - //计算全选个数 - layui.each(data, function(i, item){ - if(layui._typeof(item) === 'array'){ - invalidNum++; //无效数据,或已删除的 - return; - } - if(item[table.config.checkName]){ - nums++; - arr.push(table.clearCacheKey(item)); - } - }); - return { - data: arr //选中的数据 - ,isAll: data.length ? (nums === (data.length - invalidNum)) : false //是否全选 - }; - }; - - //获取表格当前页的所有行数据 - table.getData = function(id){ - var arr = [] - ,data = table.cache[id] || []; - layui.each(data, function(i, item){ - if(layui._typeof(item) === 'array'){ - return; - }; - arr.push(table.clearCacheKey(item)); - }); - return arr; - }; - - //表格导出 - table.exportFile = function(id, data, type){ - var that = this; - - data = data || table.clearCacheKey(table.cache[id]); - type = type || 'csv'; - - var thatTable = thisTable.that[id] - ,config = thisTable.config[id] || {} - ,textType = ({ - csv: 'text/csv' - ,xls: 'application/vnd.ms-excel' - })[type] - ,alink = document.createElement("a"); - - if(device.ie) return hint.error('IE_NOT_SUPPORT_EXPORTS'); - - alink.href = 'data:'+ textType +';charset=utf-8,\ufeff'+ encodeURIComponent(function(){ - var dataTitle = [], dataMain = [], dataTotal = []; - - //表头和表体 - layui.each(data, function(i1, item1){ - var vals = []; - if(typeof id === 'object'){ //如果 id 参数直接为表头数据 - layui.each(id, function(i, item){ - i1 == 0 && dataTitle.push(item || ''); - }); - layui.each(table.clearCacheKey(item1), function(i2, item2){ - vals.push('"'+ (item2 || '') +'"'); - }); - } else { - table.eachCols(id, function(i3, item3){ - if(item3.field && item3.type == 'normal' && !item3.hide){ - var content = item1[item3.field]; - if(content === undefined || content === null) content = ''; - - i1 == 0 && dataTitle.push(item3.title || ''); - vals.push('"'+ parseTempData.call(thatTable, item3, content, item1, 'text') + '"'); - } - }); - } - dataMain.push(vals.join(',')); - }); - - //表合计 - layui.each(that.dataTotal, function(key, value){ - dataTotal.push(value); - }); - - return dataTitle.join(',') + '\r\n' + dataMain.join('\r\n') + '\r\n' + dataTotal.join(','); - }()); - - alink.download = (config.title || 'table_'+ (config.index || '')) + '.' + type; - document.body.appendChild(alink); - alink.click(); - document.body.removeChild(alink); - }; - - //重置表格尺寸结构 - table.resize = function(id){ - //如果指定表格唯一 id,则只执行该 id 对应的表格实例 - if(id){ - var config = getThisTableConfig(id); //获取当前实例配置项 - if(!config) return; - - thisTable.that[id].resize(); - - } else { //否则重置所有表格实例尺寸 - layui.each(thisTable.that, function(){ - this.resize(); - }); - } - }; - - //表格重载 - table.reload = function(id, options, deep){ - var config = getThisTableConfig(id); //获取当前实例配置项 - if(!config) return; - - var that = thisTable.that[id]; - that.reload(options, deep); - - return thisTable.call(that); - }; - - //核心入口 - table.render = function(options){ - var inst = new Class(options); - return thisTable.call(inst); - }; - - //清除临时Key - table.clearCacheKey = function(data){ - data = $.extend({}, data); - delete data[table.config.checkName]; - delete data[table.config.indexName]; - return data; - }; - - //自动完成渲染 - $(function(){ - table.init(); - }); - - exports(MOD_NAME, table); -}); - - diff --git a/static/Layui/v2.6.8/modules/transfer.js b/static/Layui/v2.6.8/modules/transfer.js deleted file mode 100644 index 5ac2207..0000000 --- a/static/Layui/v2.6.8/modules/transfer.js +++ /dev/null @@ -1,437 +0,0 @@ -/** - - @Name:transfer 穿梭框组件 - @License:MIT - - */ - -layui.define(['laytpl', 'form'], function(exports){ - "use strict"; - - var $ = layui.$ - ,laytpl = layui.laytpl - ,form = layui.form - - //模块名 - ,MOD_NAME = 'transfer' - - //外部接口 - ,transfer = { - config: {} - ,index: layui[MOD_NAME] ? (layui[MOD_NAME].index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisModule = function(){ - var that = this - ,options = that.config - ,id = options.id || that.index; - - thisModule.that[id] = that; //记录当前实例对象 - thisModule.config[id] = options; //记录当前实例配置项 - - return { - config: options - //重置实例 - ,reload: function(options){ - that.reload.call(that, options); - } - //获取右侧数据 - ,getData: function(){ - return that.getData.call(that); - } - } - } - - //获取当前实例配置项 - ,getThisModuleConfig = function(id){ - var config = thisModule.config[id]; - if(!config) hint.error('The ID option was not found in the '+ MOD_NAME +' instance'); - return config || null; - } - - //字符常量 - ,ELEM = 'layui-transfer', HIDE = 'layui-hide', DISABLED = 'layui-btn-disabled', NONE = 'layui-none' - ,ELEM_BOX = 'layui-transfer-box', ELEM_HEADER = 'layui-transfer-header', ELEM_SEARCH = 'layui-transfer-search', ELEM_ACTIVE = 'layui-transfer-active', ELEM_DATA = 'layui-transfer-data' - - //穿梭框模板 - ,TPL_BOX = function(obj){ - obj = obj || {}; - return ['
        ' - ,'
        ' - ,'' - ,'
        ' - ,'{{# if(d.data.showSearch){ }}' - ,'' - ,'{{# } }}' - ,'
          ' - ,'
          '].join(''); - } - - //主模板 - ,TPL_MAIN = ['
          ' - ,TPL_BOX({ - index: 0 - ,checkAllName: 'layTransferLeftCheckAll' - }) - ,'
          ' - ,'' - ,'' - ,'
          ' - ,TPL_BOX({ - index: 1 - ,checkAllName: 'layTransferRightCheckAll' - }) - ,'
          '].join('') - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++transfer.index; - that.config = $.extend({}, that.config, transfer.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - title: ['列表一', '列表二'] - ,width: 200 - ,height: 360 - ,data: [] //数据源 - ,value: [] //选中的数据 - ,showSearch: false //是否开启搜索 - ,id: '' //唯一索引,默认自增 index - ,text: { - none: '无数据' - ,searchNone: '无匹配数据' - } - }; - - //重载实例 - Class.prototype.reload = function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - that.render(); - }; - - //渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - //解析模板 - var thisElem = that.elem = $(laytpl(TPL_MAIN).render({ - data: options - ,index: that.index //索引 - })); - - var othis = options.elem = $(options.elem); - if(!othis[0]) return; - - //初始化属性 - options.data = options.data || []; - options.value = options.value || []; - - //索引 - that.key = options.id || that.index; - - //插入组件结构 - othis.html(that.elem); - - //各级容器 - that.layBox = that.elem.find('.'+ ELEM_BOX) - that.layHeader = that.elem.find('.'+ ELEM_HEADER) - that.laySearch = that.elem.find('.'+ ELEM_SEARCH) - that.layData = thisElem.find('.'+ ELEM_DATA); - that.layBtn = thisElem.find('.'+ ELEM_ACTIVE + ' .layui-btn'); - - //初始化尺寸 - that.layBox.css({ - width: options.width - ,height: options.height - }); - that.layData.css({ - height: function(){ - return options.height - that.layHeader.outerHeight() - that.laySearch.outerHeight() - 2 - }() - }); - - that.renderData(); //渲染数据 - that.events(); //事件 - }; - - //渲染数据 - Class.prototype.renderData = function(){ - var that = this - ,options = that.config; - - //左右穿梭框差异数据 - var arr = [{ - checkName: 'layTransferLeftCheck' - ,views: [] - }, { - checkName: 'layTransferRightCheck' - ,views: [] - }]; - - //解析格式 - that.parseData(function(item){ - //标注为 selected 的为右边的数据 - var _index = item.selected ? 1 : 0 - ,listElem = ['
        • ' - ,'' - ,'
        • '].join(''); - arr[_index].views.push(listElem); - delete item.selected; - }); - - that.layData.eq(0).html(arr[0].views.join('')); - that.layData.eq(1).html(arr[1].views.join('')); - - that.renderCheckBtn(); - } - - //渲染表单 - Class.prototype.renderForm = function(type){ - form.render(type, 'LAY-transfer-'+ this.index); - }; - - //同步复选框和按钮状态 - Class.prototype.renderCheckBtn = function(obj){ - var that = this - ,options = that.config; - - obj = obj || {}; - - that.layBox.each(function(_index){ - var othis = $(this) - ,thisDataElem = othis.find('.'+ ELEM_DATA) - ,allElemCheckbox = othis.find('.'+ ELEM_HEADER).find('input[type="checkbox"]') - ,listElemCheckbox = thisDataElem.find('input[type="checkbox"]'); - - //同步复选框和按钮状态 - var nums = 0 - ,haveChecked = false; - listElemCheckbox.each(function(){ - var isHide = $(this).data('hide'); - if(this.checked || this.disabled || isHide){ - nums++; - } - if(this.checked && !isHide){ - haveChecked = true; - } - }); - - allElemCheckbox.prop('checked', haveChecked && nums === listElemCheckbox.length); //全选复选框状态 - that.layBtn.eq(_index)[haveChecked ? 'removeClass' : 'addClass'](DISABLED); //对应的按钮状态 - - //无数据视图 - if(!obj.stopNone){ - var isNone = thisDataElem.children('li:not(.'+ HIDE +')').length - that.noneView(thisDataElem, isNone ? '' : options.text.none); - } - }); - - that.renderForm('checkbox'); - }; - - //无数据视图 - Class.prototype.noneView = function(thisDataElem, text){ - var createNoneElem = $('

          '+ (text || '') +'

          '); - if(thisDataElem.find('.'+ NONE)[0]){ - thisDataElem.find('.'+ NONE).remove(); - } - text.replace(/\s/g, '') && thisDataElem.append(createNoneElem); - }; - - //同步 value 属性值 - Class.prototype.setValue = function(){ - var that = this - ,options = that.config - ,arr = []; - that.layBox.eq(1).find('.'+ ELEM_DATA +' input[type="checkbox"]').each(function(){ - var isHide = $(this).data('hide'); - isHide || arr.push(this.value); - }); - options.value = arr; - - return that; - }; - - //解析数据 - Class.prototype.parseData = function(callback){ - var that = this - ,options = that.config - ,newData = []; - - layui.each(options.data, function(index, item){ - //解析格式 - item = (typeof options.parseData === 'function' - ? options.parseData(item) - : item) || item; - - newData.push(item = $.extend({}, item)) - - layui.each(options.value, function(index2, item2){ - if(item2 == item.value){ - item.selected = true; - } - }); - callback && callback(item); - }); - - options.data = newData; - return that; - }; - - //获得右侧面板数据 - Class.prototype.getData = function(value){ - var that = this - ,options = that.config - ,selectedData = []; - - that.setValue(); - - layui.each(value || options.value, function(index, item){ - layui.each(options.data, function(index2, item2){ - delete item2.selected; - if(item == item2.value){ - selectedData.push(item2); - }; - }); - }); - return selectedData; - }; - - //事件 - Class.prototype.events = function(){ - var that = this - ,options = that.config; - - //左右复选框 - that.elem.on('click', 'input[lay-filter="layTransferCheckbox"]+', function(){ - var thisElemCheckbox = $(this).prev() - ,checked = thisElemCheckbox[0].checked - ,thisDataElem = thisElemCheckbox.parents('.'+ ELEM_BOX).eq(0).find('.'+ ELEM_DATA); - - if(thisElemCheckbox[0].disabled) return; - - //判断是否全选 - if(thisElemCheckbox.attr('lay-type') === 'all'){ - thisDataElem.find('input[type="checkbox"]').each(function(){ - if(this.disabled) return; - this.checked = checked; - }); - } - - that.renderCheckBtn({stopNone: true}); - }); - - //按钮事件 - that.layBtn.on('click', function(){ - var othis = $(this) - ,_index = othis.data('index') - ,thisBoxElem = that.layBox.eq(_index) - ,arr = []; - if(othis.hasClass(DISABLED)) return; - - that.layBox.eq(_index).each(function(_index){ - var othis = $(this) - ,thisDataElem = othis.find('.'+ ELEM_DATA); - - thisDataElem.children('li').each(function(){ - var thisList = $(this) - ,thisElemCheckbox = thisList.find('input[type="checkbox"]') - ,isHide = thisElemCheckbox.data('hide'); - - if(thisElemCheckbox[0].checked && !isHide){ - thisElemCheckbox[0].checked = false; - thisBoxElem.siblings('.'+ ELEM_BOX).find('.'+ ELEM_DATA).append(thisList.clone()); - thisList.remove(); - - //记录当前穿梭的数据 - arr.push(thisElemCheckbox[0].value); - } - - that.setValue(); - }); - }); - - that.renderCheckBtn(); - - //穿梭时,如果另外一个框正在搜索,则触发匹配 - var siblingInput = thisBoxElem.siblings('.'+ ELEM_BOX).find('.'+ ELEM_SEARCH +' input') - siblingInput.val() === '' || siblingInput.trigger('keyup'); - - //穿梭时的回调 - options.onchange && options.onchange(that.getData(arr), _index); - }); - - //搜索 - that.laySearch.find('input').on('keyup', function(){ - var value = this.value - ,thisDataElem = $(this).parents('.'+ ELEM_SEARCH).eq(0).siblings('.'+ ELEM_DATA) - ,thisListElem = thisDataElem.children('li'); - - thisListElem.each(function(){ - var thisList = $(this) - ,thisElemCheckbox = thisList.find('input[type="checkbox"]') - ,isMatch = thisElemCheckbox[0].title.indexOf(value) !== -1; - - thisList[isMatch ? 'removeClass': 'addClass'](HIDE); - thisElemCheckbox.data('hide', isMatch ? false : true); - }); - - that.renderCheckBtn(); - - //无匹配数据视图 - var isNone = thisListElem.length === thisDataElem.children('li.'+ HIDE).length; - that.noneView(thisDataElem, isNone ? options.text.searchNone : ''); - }); - }; - - //记录所有实例 - thisModule.that = {}; //记录所有实例对象 - thisModule.config = {}; //记录所有实例配置项 - - //重载实例 - transfer.reload = function(id, options){ - var that = thisModule.that[id]; - that.reload(options); - - return thisModule.call(that); - }; - - //获得选中的数据(右侧面板) - transfer.getData = function(id){ - var that = thisModule.that[id]; - return that.getData(); - }; - - //核心入口 - transfer.render = function(options){ - var inst = new Class(options); - return thisModule.call(inst); - }; - - exports(MOD_NAME, transfer); -}); diff --git a/static/Layui/v2.6.8/modules/tree.js b/static/Layui/v2.6.8/modules/tree.js deleted file mode 100644 index 3f38abd..0000000 --- a/static/Layui/v2.6.8/modules/tree.js +++ /dev/null @@ -1,816 +0,0 @@ -/** - - @Name:tree 树组件 - @License:MIT - - */ - -layui.define('form', function(exports){ - "use strict"; - - var $ = layui.$ - ,form = layui.form - ,layer = layui.layer - - //模块名 - ,MOD_NAME = 'tree' - - //外部接口 - ,tree = { - config: {} - ,index: layui[MOD_NAME] ? (layui[MOD_NAME].index + 10000) : 0 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisModule = function(){ - var that = this - ,options = that.config - ,id = options.id || that.index; - - thisModule.that[id] = that; //记录当前实例对象 - thisModule.config[id] = options; //记录当前实例配置项 - - return { - config: options - //重置实例 - ,reload: function(options){ - that.reload.call(that, options); - } - ,getChecked: function(){ - return that.getChecked.call(that); - } - ,setChecked: function(id){//设置值 - return that.setChecked.call(that, id); - } - } - } - - //获取当前实例配置项 - ,getThisModuleConfig = function(id){ - var config = thisModule.config[id]; - if(!config) hint.error('The ID option was not found in the '+ MOD_NAME +' instance'); - return config || null; - } - - //字符常量 - ,SHOW = 'layui-show', HIDE = 'layui-hide', NONE = 'layui-none', DISABLED = 'layui-disabled' - - ,ELEM_VIEW = 'layui-tree', ELEM_SET = 'layui-tree-set', ICON_CLICK = 'layui-tree-iconClick' - ,ICON_ADD = 'layui-icon-addition', ICON_SUB = 'layui-icon-subtraction', ELEM_ENTRY = 'layui-tree-entry', ELEM_MAIN = 'layui-tree-main', ELEM_TEXT = 'layui-tree-txt', ELEM_PACK = 'layui-tree-pack', ELEM_SPREAD = 'layui-tree-spread' - ,ELEM_LINE_SHORT = 'layui-tree-setLineShort', ELEM_SHOW = 'layui-tree-showLine', ELEM_EXTEND = 'layui-tree-lineExtend' - - //构造器 - ,Class = function(options){ - var that = this; - that.index = ++tree.index; - that.config = $.extend({}, that.config, tree.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - data: [] //数据 - - ,showCheckbox: false //是否显示复选框 - ,showLine: true //是否开启连接线 - ,accordion: false //是否开启手风琴模式 - ,onlyIconControl: false //是否仅允许节点左侧图标控制展开收缩 - ,isJump: false //是否允许点击节点时弹出新窗口跳转 - ,edit: false //是否开启节点的操作图标 - - ,text: { - defaultNodeName: '未命名' //节点默认名称 - ,none: '无数据' //数据为空时的文本提示 - } - }; - - //重载实例 - Class.prototype.reload = function(options){ - var that = this; - - layui.each(options, function(key, item){ - if(layui._typeof(item) === 'array') delete that.config[key]; - }); - - that.config = $.extend(true, {}, that.config, options); - that.render(); - }; - - //主体渲染 - Class.prototype.render = function(){ - var that = this - ,options = that.config; - - that.checkids = []; - - var temp = $('
          '); - that.tree(temp); - - var othis = options.elem = $(options.elem); - if(!othis[0]) return; - - //索引 - that.key = options.id || that.index; - - //插入组件结构 - that.elem = temp; - that.elemNone = $('
          '+ options.text.none +'
          '); - othis.html(that.elem); - - if(that.elem.find('.layui-tree-set').length == 0){ - return that.elem.append(that.elemNone); - }; - - //复选框渲染 - if(options.showCheckbox){ - that.renderForm('checkbox'); - }; - - that.elem.find('.layui-tree-set').each(function(){ - var othis = $(this); - //最外层 - if(!othis.parent('.layui-tree-pack')[0]){ - othis.addClass('layui-tree-setHide'); - }; - - //没有下一个节点 上一层父级有延伸线 - if(!othis.next()[0] && othis.parents('.layui-tree-pack').eq(1).hasClass('layui-tree-lineExtend')){ - othis.addClass(ELEM_LINE_SHORT); - }; - - //没有下一个节点 外层最后一个 - if(!othis.next()[0] && !othis.parents('.layui-tree-set').eq(0).next()[0]){ - othis.addClass(ELEM_LINE_SHORT); - }; - }); - - that.events(); - }; - - //渲染表单 - Class.prototype.renderForm = function(type){ - form.render(type, 'LAY-tree-'+ this.index); - }; - - //节点解析 - Class.prototype.tree = function(elem, children){ - var that = this - ,options = that.config - ,data = children || options.data; - - //遍历数据 - layui.each(data, function(index, item){ - var hasChild = item.children && item.children.length > 0 - ,packDiv = $('
          ') - ,entryDiv = $(['
          ' - ,'
          ' - ,'
          ' - //箭头 - ,function(){ - if(options.showLine){ - if(hasChild){ - return ''; - }else{ - return ''; - }; - }else{ - return ''; - }; - }() - - //复选框 - ,function(){ - return options.showCheckbox ? '' : ''; - }() - - //节点 - ,function(){ - if(options.isJump && item.href){ - return ''+ (item.title || item.label || options.text.defaultNodeName) +''; - }else{ - return ''+ (item.title || item.label || options.text.defaultNodeName) +''; - } - }() - ,'
          ' - - //节点操作图标 - ,function(){ - if(!options.edit) return ''; - - var editIcon = { - add: '' - ,update: '' - ,del: '' - }, arr = ['
          ']; - - if(options.edit === true){ - options.edit = ['update', 'del'] - } - - if(typeof options.edit === 'object'){ - layui.each(options.edit, function(i, val){ - arr.push(editIcon[val] || '') - }); - return arr.join('') + '
          '; - } - }() - ,'
          '].join('')); - - //如果有子节点,则递归继续生成树 - if(hasChild){ - entryDiv.append(packDiv); - that.tree(packDiv, item.children); - }; - - elem.append(entryDiv); - - //若有前置节点,前置节点加连接线 - if(entryDiv.prev('.'+ELEM_SET)[0]){ - entryDiv.prev().children('.layui-tree-pack').addClass('layui-tree-showLine'); - }; - - //若无子节点,则父节点加延伸线 - if(!hasChild){ - entryDiv.parent('.layui-tree-pack').addClass('layui-tree-lineExtend'); - }; - - //展开节点操作 - that.spread(entryDiv, item); - - //选择框 - if(options.showCheckbox){ - item.checked && that.checkids.push(item.id); - that.checkClick(entryDiv, item); - } - - //操作节点 - options.edit && that.operate(entryDiv, item); - - }); - }; - - //展开节点 - Class.prototype.spread = function(elem, item){ - var that = this - ,options = that.config - ,entry = elem.children('.'+ELEM_ENTRY) - ,elemMain = entry.children('.'+ ELEM_MAIN) - ,elemIcon = entry.find('.'+ ICON_CLICK) - ,elemText = entry.find('.'+ ELEM_TEXT) - ,touchOpen = options.onlyIconControl ? elemIcon : elemMain //判断展开通过节点还是箭头图标 - ,state = ''; - - //展开收缩 - touchOpen.on('click', function(e){ - var packCont = elem.children('.'+ELEM_PACK) - ,iconClick = touchOpen.children('.layui-icon')[0] ? touchOpen.children('.layui-icon') : touchOpen.find('.layui-tree-icon').children('.layui-icon'); - - //若没有子节点 - if(!packCont[0]){ - state = 'normal'; - }else{ - if(elem.hasClass(ELEM_SPREAD)){ - elem.removeClass(ELEM_SPREAD); - packCont.slideUp(200); - iconClick.removeClass(ICON_SUB).addClass(ICON_ADD); - }else{ - elem.addClass(ELEM_SPREAD); - packCont.slideDown(200); - iconClick.addClass(ICON_SUB).removeClass(ICON_ADD); - - //是否手风琴 - if(options.accordion){ - var sibls = elem.siblings('.'+ELEM_SET); - sibls.removeClass(ELEM_SPREAD); - sibls.children('.'+ELEM_PACK).slideUp(200); - sibls.find('.layui-tree-icon').children('.layui-icon').removeClass(ICON_SUB).addClass(ICON_ADD); - }; - }; - }; - }); - - //点击回调 - elemText.on('click', function(){ - var othis = $(this); - - //判断是否禁用状态 - if(othis.hasClass(DISABLED)) return; - - //判断展开收缩状态 - if(elem.hasClass(ELEM_SPREAD)){ - state = options.onlyIconControl ? 'open' : 'close'; - } else { - state = options.onlyIconControl ? 'close' : 'open'; - } - - //点击产生的回调 - options.click && options.click({ - elem: elem - ,state: state - ,data: item - }); - }); - }; - - //计算复选框选中状态 - Class.prototype.setCheckbox = function(elem, item, elemCheckbox){ - var that = this - ,options = that.config - ,checked = elemCheckbox.prop('checked'); - - if(elemCheckbox.prop('disabled')) return; - - //同步子节点选中状态 - if(typeof item.children === 'object' || elem.find('.'+ELEM_PACK)[0]){ - var childs = elem.find('.'+ ELEM_PACK).find('input[same="layuiTreeCheck"]'); - childs.each(function(){ - if(this.disabled) return; //不可点击则跳过 - this.checked = checked; - }); - }; - - //同步父节点选中状态 - var setParentsChecked = function(thisNodeElem){ - //若无父节点,则终止递归 - if(!thisNodeElem.parents('.'+ ELEM_SET)[0]) return; - - var state - ,parentPack = thisNodeElem.parent('.'+ ELEM_PACK) - ,parentNodeElem = parentPack.parent() - ,parentCheckbox = parentPack.prev().find('input[same="layuiTreeCheck"]'); - - //如果子节点有任意一条选中,则父节点为选中状态 - if(checked){ - parentCheckbox.prop('checked', checked); - } else { //如果当前节点取消选中,则根据计算“兄弟和子孙”节点选中状态,来同步父节点选中状态 - parentPack.find('input[same="layuiTreeCheck"]').each(function(){ - if(this.checked){ - state = true; - } - }); - - //如果兄弟子孙节点全部未选中,则父节点也应为非选中状态 - state || parentCheckbox.prop('checked', false); - } - - //向父节点递归 - setParentsChecked(parentNodeElem); - }; - - setParentsChecked(elem); - - that.renderForm('checkbox'); - }; - - //复选框选择 - Class.prototype.checkClick = function(elem, item){ - var that = this - ,options = that.config - ,entry = elem.children('.'+ ELEM_ENTRY) - ,elemMain = entry.children('.'+ ELEM_MAIN); - - - - //点击复选框 - elemMain.on('click', 'input[same="layuiTreeCheck"]+', function(e){ - layui.stope(e); //阻止点击节点事件 - - var elemCheckbox = $(this).prev() - ,checked = elemCheckbox.prop('checked'); - - if(elemCheckbox.prop('disabled')) return; - - that.setCheckbox(elem, item, elemCheckbox); - - //复选框点击产生的回调 - options.oncheck && options.oncheck({ - elem: elem - ,checked: checked - ,data: item - }); - }); - }; - - //节点操作 - Class.prototype.operate = function(elem, item){ - var that = this - ,options = that.config - ,entry = elem.children('.'+ ELEM_ENTRY) - ,elemMain = entry.children('.'+ ELEM_MAIN); - - entry.children('.layui-tree-btnGroup').on('click', '.layui-icon', function(e){ - layui.stope(e); //阻止节点操作 - - var type = $(this).data("type") - ,packCont = elem.children('.'+ELEM_PACK) - ,returnObj = { - data: item - ,type: type - ,elem:elem - }; - //增加 - if(type == 'add'){ - //若节点本身无子节点 - if(!packCont[0]){ - //若开启连接线,更改图标样式 - if(options.showLine){ - elemMain.find('.'+ICON_CLICK).addClass('layui-tree-icon'); - elemMain.find('.'+ICON_CLICK).children('.layui-icon').addClass(ICON_ADD).removeClass('layui-icon-file'); - //若未开启连接线,显示箭头 - }else{ - elemMain.find('.layui-tree-iconArrow').removeClass(HIDE); - }; - //节点添加子节点容器 - elem.append('
          '); - }; - - //新增节点 - var key = options.operate && options.operate(returnObj) - ,obj = {}; - obj.title = options.text.defaultNodeName; - obj.id = key; - that.tree(elem.children('.'+ELEM_PACK), [obj]); - - //放在新增后面,因为要对元素进行操作 - if(options.showLine){ - //节点本身无子节点 - if(!packCont[0]){ - //遍历兄弟节点,判断兄弟节点是否有子节点 - var siblings = elem.siblings('.'+ELEM_SET), num = 1 - ,parentPack = elem.parent('.'+ELEM_PACK); - layui.each(siblings, function(index, i){ - if(!$(i).children('.'+ELEM_PACK)[0]){ - num = 0; - }; - }); - - //若兄弟节点都有子节点 - if(num == 1){ - //兄弟节点添加连接线 - siblings.children('.'+ELEM_PACK).addClass(ELEM_SHOW); - siblings.children('.'+ELEM_PACK).children('.'+ELEM_SET).removeClass(ELEM_LINE_SHORT); - elem.children('.'+ELEM_PACK).addClass(ELEM_SHOW); - //父级移除延伸线 - parentPack.removeClass(ELEM_EXTEND); - //同层节点最后一个更改线的状态 - parentPack.children('.'+ELEM_SET).last().children('.'+ELEM_PACK).children('.'+ELEM_SET).last().addClass(ELEM_LINE_SHORT); - }else{ - elem.children('.'+ELEM_PACK).children('.'+ELEM_SET).addClass(ELEM_LINE_SHORT); - }; - }else{ - //添加延伸线 - if(!packCont.hasClass(ELEM_EXTEND)){ - packCont.addClass(ELEM_EXTEND); - }; - //子节点添加延伸线 - elem.find('.'+ELEM_PACK).each(function(){ - $(this).children('.'+ELEM_SET).last().addClass(ELEM_LINE_SHORT); - }); - //如果前一个节点有延伸线 - if(packCont.children('.'+ELEM_SET).last().prev().hasClass(ELEM_LINE_SHORT)){ - packCont.children('.'+ELEM_SET).last().prev().removeClass(ELEM_LINE_SHORT); - }else{ - //若之前的没有,说明处于连接状态 - packCont.children('.'+ELEM_SET).last().removeClass(ELEM_LINE_SHORT); - }; - //若是最外层,要始终保持相连的状态 - if(!elem.parent('.'+ELEM_PACK)[0] && elem.next()[0]){ - packCont.children('.'+ELEM_SET).last().removeClass(ELEM_LINE_SHORT); - }; - }; - }; - if(!options.showCheckbox) return; - //若开启复选框,同步新增节点状态 - if(elemMain.find('input[same="layuiTreeCheck"]')[0].checked){ - var packLast = elem.children('.'+ELEM_PACK).children('.'+ELEM_SET).last(); - packLast.find('input[same="layuiTreeCheck"]')[0].checked = true; - }; - that.renderForm('checkbox'); - - //修改 - }else if(type == 'update'){ - var text = elemMain.children('.'+ ELEM_TEXT).html(); - elemMain.children('.'+ ELEM_TEXT).html(''); - //添加输入框,覆盖在文字上方 - elemMain.append(''); - //获取焦点 - elemMain.children('.layui-tree-editInput').val(text).focus(); - //嵌入文字移除输入框 - var getVal = function(input){ - var textNew = input.val().trim(); - textNew = textNew ? textNew : options.text.defaultNodeName; - input.remove(); - elemMain.children('.'+ ELEM_TEXT).html(textNew); - - //同步数据 - returnObj.data.title = textNew; - - //节点修改的回调 - options.operate && options.operate(returnObj); - }; - //失去焦点 - elemMain.children('.layui-tree-editInput').blur(function(){ - getVal($(this)); - }); - //回车 - elemMain.children('.layui-tree-editInput').on('keydown', function(e){ - if(e.keyCode === 13){ - e.preventDefault(); - getVal($(this)); - }; - }); - - //删除 - } else { - layer.confirm('确认删除该节点 "'+ (item.title || '') +'" 吗?', function(index){ - options.operate && options.operate(returnObj); //节点删除的回调 - returnObj.status = 'remove'; //标注节点删除 - - layer.close(index); - - //若删除最后一个,显示空数据提示 - if(!elem.prev('.'+ELEM_SET)[0] && !elem.next('.'+ELEM_SET)[0] && !elem.parent('.'+ELEM_PACK)[0]){ - elem.remove(); - that.elem.append(that.elemNone); - return; - }; - //若有兄弟节点 - if(elem.siblings('.'+ELEM_SET).children('.'+ELEM_ENTRY)[0]){ - //若开启复选框 - if(options.showCheckbox){ - //若开启复选框,进行下步操作 - var elemDel = function(elem){ - //若无父结点,则不执行 - if(!elem.parents('.'+ELEM_SET)[0]) return; - var siblingTree = elem.siblings('.'+ELEM_SET).children('.'+ELEM_ENTRY) - ,parentTree = elem.parent('.'+ELEM_PACK).prev() - ,checkState = parentTree.find('input[same="layuiTreeCheck"]')[0] - ,state = 1, num = 0; - //若父节点未勾选 - if(checkState.checked == false){ - //遍历兄弟节点 - siblingTree.each(function(i, item1){ - var input = $(item1).find('input[same="layuiTreeCheck"]')[0] - if(input.checked == false && !input.disabled){ - state = 0; - }; - //判断是否全为不可勾选框 - if(!input.disabled){ - num = 1; - }; - }); - //若有可勾选选择框并且已勾选 - if(state == 1 && num == 1){ - //勾选父节点 - checkState.checked = true; - that.renderForm('checkbox'); - //向上遍历祖先节点 - elemDel(parentTree.parent('.'+ELEM_SET)); - }; - }; - }; - elemDel(elem); - }; - //若开启连接线 - if(options.showLine){ - //遍历兄弟节点,判断兄弟节点是否有子节点 - var siblings = elem.siblings('.'+ELEM_SET), num = 1 - ,parentPack = elem.parent('.'+ELEM_PACK); - layui.each(siblings, function(index, i){ - if(!$(i).children('.'+ELEM_PACK)[0]){ - num = 0; - }; - }); - //若兄弟节点都有子节点 - if(num == 1){ - //若节点本身无子节点 - if(!packCont[0]){ - //父级去除延伸线,因为此时子节点里没有空节点 - parentPack.removeClass(ELEM_EXTEND); - siblings.children('.'+ELEM_PACK).addClass(ELEM_SHOW); - siblings.children('.'+ELEM_PACK).children('.'+ELEM_SET).removeClass(ELEM_LINE_SHORT); - }; - //若为最后一个节点 - if(!elem.next()[0]){ - elem.prev().children('.'+ELEM_PACK).children('.'+ELEM_SET).last().addClass(ELEM_LINE_SHORT); - }else{ - parentPack.children('.'+ELEM_SET).last().children('.'+ELEM_PACK).children('.'+ELEM_SET).last().addClass(ELEM_LINE_SHORT); - }; - //若为最外层最后一个节点,去除前一个结点的连接线 - if(!elem.next()[0] && !elem.parents('.'+ELEM_SET)[1] && !elem.parents('.'+ELEM_SET).eq(0).next()[0]){ - elem.prev('.'+ELEM_SET).addClass(ELEM_LINE_SHORT); - }; - }else{ - //若为最后一个节点且有延伸线 - if(!elem.next()[0] && elem.hasClass(ELEM_LINE_SHORT)){ - elem.prev().addClass(ELEM_LINE_SHORT); - }; - }; - }; - - }else{ - //若无兄弟节点 - var prevDiv = elem.parent('.'+ELEM_PACK).prev(); - //若开启了连接线 - if(options.showLine){ - prevDiv.find('.'+ICON_CLICK).removeClass('layui-tree-icon'); - prevDiv.find('.'+ICON_CLICK).children('.layui-icon').removeClass(ICON_SUB).addClass('layui-icon-file'); - //父节点所在层添加延伸线 - var pare = prevDiv.parents('.'+ELEM_PACK).eq(0); - pare.addClass(ELEM_EXTEND); - - //兄弟节点最后子节点添加延伸线 - pare.children('.'+ELEM_SET).each(function(){ - $(this).children('.'+ELEM_PACK).children('.'+ELEM_SET).last().addClass(ELEM_LINE_SHORT); - }); - }else{ - //父节点隐藏箭头 - prevDiv.find('.layui-tree-iconArrow').addClass(HIDE); - }; - //移除展开属性 - elem.parents('.'+ELEM_SET).eq(0).removeClass(ELEM_SPREAD); - //移除节点容器 - elem.parent('.'+ELEM_PACK).remove(); - }; - - elem.remove(); - }); - - }; - }); - }; - - //部分事件 - Class.prototype.events = function(){ - var that = this - ,options = that.config - ,checkWarp = that.elem.find('.layui-tree-checkedFirst'); - - //初始选中 - that.setChecked(that.checkids); - - //搜索 - that.elem.find('.layui-tree-search').on('keyup', function(){ - var input = $(this) - ,val = input.val() - ,pack = input.nextAll() - ,arr = []; - - //遍历所有的值 - pack.find('.'+ ELEM_TEXT).each(function(){ - var entry = $(this).parents('.'+ELEM_ENTRY); - //若值匹配,加一个类以作标识 - if($(this).html().indexOf(val) != -1){ - arr.push($(this).parent()); - - var select = function(div){ - div.addClass('layui-tree-searchShow'); - //向上父节点渲染 - if(div.parent('.'+ELEM_PACK)[0]){ - select(div.parent('.'+ELEM_PACK).parent('.'+ELEM_SET)); - }; - }; - select(entry.parent('.'+ELEM_SET)); - }; - }); - - //根据标志剔除 - pack.find('.'+ELEM_ENTRY).each(function(){ - var parent = $(this).parent('.'+ELEM_SET); - if(!parent.hasClass('layui-tree-searchShow')){ - parent.addClass(HIDE); - }; - }); - if(pack.find('.layui-tree-searchShow').length == 0){ - that.elem.append(that.elemNone); - }; - - //节点过滤的回调 - options.onsearch && options.onsearch({ - elem: arr - }); - }); - - //还原搜索初始状态 - that.elem.find('.layui-tree-search').on('keydown', function(){ - $(this).nextAll().find('.'+ELEM_ENTRY).each(function(){ - var parent = $(this).parent('.'+ELEM_SET); - parent.removeClass('layui-tree-searchShow '+ HIDE); - }); - if($('.layui-tree-emptyText')[0]) $('.layui-tree-emptyText').remove(); - }); - }; - - //得到选中节点 - Class.prototype.getChecked = function(){ - var that = this - ,options = that.config - ,checkId = [] - ,checkData = []; - - //遍历节点找到选中索引 - that.elem.find('.layui-form-checked').each(function(){ - checkId.push($(this).prev()[0].value); - }); - - //遍历节点 - var eachNodes = function(data, checkNode){ - layui.each(data, function(index, item){ - layui.each(checkId, function(index2, item2){ - if(item.id == item2){ - var cloneItem = $.extend({}, item); - delete cloneItem.children; - - checkNode.push(cloneItem); - - if(item.children){ - cloneItem.children = []; - eachNodes(item.children, cloneItem.children); - } - return true - } - }); - }); - }; - - eachNodes($.extend({}, options.data), checkData); - - return checkData; - }; - - //设置选中节点 - Class.prototype.setChecked = function(checkedId){ - var that = this - ,options = that.config; - - //初始选中 - that.elem.find('.'+ELEM_SET).each(function(i, item){ - var thisId = $(this).data('id') - ,input = $(item).children('.'+ELEM_ENTRY).find('input[same="layuiTreeCheck"]') - ,reInput = input.next(); - - //若返回数字 - if(typeof checkedId === 'number'){ - if(thisId == checkedId){ - if(!input[0].checked){ - reInput.click(); - }; - return false; - }; - } - //若返回数组 - else if(typeof checkedId === 'object'){ - layui.each(checkedId, function(index, value){ - if(value == thisId && !input[0].checked){ - reInput.click(); - return true; - } - }); - }; - }); - }; - - //记录所有实例 - thisModule.that = {}; //记录所有实例对象 - thisModule.config = {}; //记录所有实例配置项 - - //重载实例 - tree.reload = function(id, options){ - var that = thisModule.that[id]; - that.reload(options); - - return thisModule.call(that); - }; - - //获得选中的节点数据 - tree.getChecked = function(id){ - var that = thisModule.that[id]; - return that.getChecked(); - }; - - //设置选中节点 - tree.setChecked = function(id, checkedId){ - var that = thisModule.that[id]; - return that.setChecked(checkedId); - }; - - //核心入口 - tree.render = function(options){ - var inst = new Class(options); - return thisModule.call(inst); - }; - - exports(MOD_NAME, tree); -}) \ No newline at end of file diff --git a/static/Layui/v2.6.8/modules/upload.js b/static/Layui/v2.6.8/modules/upload.js deleted file mode 100644 index 3338867..0000000 --- a/static/Layui/v2.6.8/modules/upload.js +++ /dev/null @@ -1,565 +0,0 @@ - -/*! - * upload 文件上传组件 - * MIT Licensed - */ - -layui.define('layer' , function(exports){ - "use strict"; - - var $ = layui.$ - ,layer = layui.layer - ,hint = layui.hint() - ,device = layui.device() - - //外部接口 - ,upload = { - config: {} //全局配置项 - - //设置全局项 - ,set: function(options){ - var that = this; - that.config = $.extend({}, that.config, options); - return that; - } - - //事件 - ,on: function(events, callback){ - return layui.onevent.call(this, MOD_NAME, events, callback); - } - } - - //操作当前实例 - ,thisUpload = function(){ - var that = this; - return { - upload: function(files){ - that.upload.call(that, files); - } - ,reload: function(options){ - that.reload.call(that, options); - } - ,config: that.config - } - } - - //字符常量 - ,MOD_NAME = 'upload', ELEM = 'layui-upload', THIS = 'layui-this', SHOW = 'layui-show', HIDE = 'layui-hide', DISABLED = 'layui-disabled' - - ,ELEM_FILE = 'layui-upload-file', ELEM_FORM = 'layui-upload-form', ELEM_IFRAME = 'layui-upload-iframe', ELEM_CHOOSE = 'layui-upload-choose', ELEM_DRAG = 'layui-upload-drag' - - - //构造器 - ,Class = function(options){ - var that = this; - that.config = $.extend({}, that.config, upload.config, options); - that.render(); - }; - - //默认配置 - Class.prototype.config = { - accept: 'images' //允许上传的文件类型:images/file/video/audio - ,exts: '' //允许上传的文件后缀名 - ,auto: true //是否选完文件后自动上传 - ,bindAction: '' //手动上传触发的元素 - ,url: '' //上传地址 - ,field: 'file' //文件字段名 - ,acceptMime: '' //筛选出的文件类型,默认为所有文件 - ,method: 'post' //请求上传的 http 类型 - ,data: {} //请求上传的额外参数 - ,drag: true //是否允许拖拽上传 - ,size: 0 //文件限制大小,默认不限制 - ,number: 0 //允许同时上传的文件数,默认不限制 - ,multiple: false //是否允许多文件上传,不支持ie8-9 - }; - - //初始渲染 - Class.prototype.render = function(options){ - var that = this - ,options = that.config; - - options.elem = $(options.elem); - options.bindAction = $(options.bindAction); - - that.file(); - that.events(); - }; - - //追加文件域 - Class.prototype.file = function(){ - var that = this - ,options = that.config - ,elemFile = that.elemFile = $([ - '' - ].join('')) - ,next = options.elem.next(); - - if(next.hasClass(ELEM_FILE) || next.hasClass(ELEM_FORM)){ - next.remove(); - } - - //包裹ie8/9容器 - if(device.ie && device.ie < 10){ - options.elem.wrap('
          '); - } - - that.isFile() ? ( - that.elemFile = options.elem - ,options.field = options.elem[0].name - ) : options.elem.after(elemFile); - - //初始化ie8/9的Form域 - if(device.ie && device.ie < 10){ - that.initIE(); - } - }; - - //ie8-9初始化 - Class.prototype.initIE = function(){ - var that = this - ,options = that.config - ,iframe = $('') - ,elemForm = $(['
          ' - ,'
          '].join('')); - - //插入iframe - $('#'+ ELEM_IFRAME)[0] || $('body').append(iframe); - - //包裹文件域 - if(!options.elem.next().hasClass(ELEM_FORM)){ - that.elemFile.wrap(elemForm); - - //追加额外的参数 - options.elem.next('.'+ ELEM_FORM).append(function(){ - var arr = []; - layui.each(options.data, function(key, value){ - value = typeof value === 'function' ? value() : value; - arr.push('') - }); - return arr.join(''); - }()); - } - }; - - //异常提示 - Class.prototype.msg = function(content){ - return layer.msg(content, { - icon: 2 - ,shift: 6 - }); - }; - - //判断绑定元素是否为文件域本身 - Class.prototype.isFile = function(){ - var elem = this.config.elem[0]; - if(!elem) return; - return elem.tagName.toLocaleLowerCase() === 'input' && elem.type === 'file' - } - - //预读图片信息 - Class.prototype.preview = function(callback){ - var that = this; - if(window.FileReader){ - layui.each(that.chooseFiles, function(index, file){ - var reader = new FileReader(); - reader.readAsDataURL(file); - reader.onload = function(){ - callback && callback(index, file, this.result); - } - }); - } - }; - - //执行上传 - Class.prototype.upload = function(files, type){ - var that = this - ,options = that.config - ,elemFile = that.elemFile[0] - - //高级浏览器处理方式,支持跨域 - ,ajaxSend = function(){ - var successful = 0, aborted = 0 - ,items = files || that.files || that.chooseFiles || elemFile.files - ,allDone = function(){ //多文件全部上传完毕的回调 - if(options.multiple && successful + aborted === that.fileLength){ - typeof options.allDone === 'function' && options.allDone({ - total: that.fileLength - ,successful: successful - ,aborted: aborted - }); - } - }; - layui.each(items, function(index, file){ - var formData = new FormData(); - - formData.append(options.field, file); - - //追加额外的参数 - layui.each(options.data, function(key, value){ - value = typeof value === 'function' ? value() : value; - formData.append(key, value); - }); - - //提交文件 - var opts = { - url: options.url - ,type: 'post' //统一采用 post 上传 - ,data: formData - ,contentType: false - ,processData: false - ,dataType: 'json' - ,headers: options.headers || {} - //成功回调 - ,success: function(res){ - successful++; - done(index, res); - allDone(); - } - //异常回调 - ,error: function(){ - aborted++; - that.msg('请求上传接口出现异常'); - error(index); - allDone(); - } - }; - //进度条 - if(typeof options.progress === 'function'){ - opts.xhr = function(){ - var xhr = $.ajaxSettings.xhr(); - //上传进度 - xhr.upload.addEventListener("progress", function (obj) { - if(obj.lengthComputable){ - var percent = Math.floor((obj.loaded/obj.total)* 100); //百分比 - options.progress(percent, (options.item ? options.item[0] : options.elem[0]) , obj, index); - } - }); - return xhr; - } - } - $.ajax(opts); - }); - } - - //低版本IE处理方式,不支持跨域 - ,iframeSend = function(){ - var iframe = $('#'+ ELEM_IFRAME); - - that.elemFile.parent().submit(); - - //获取响应信息 - clearInterval(Class.timer); - Class.timer = setInterval(function() { - var res, iframeBody = iframe.contents().find('body'); - try { - res = iframeBody.text(); - } catch(e) { - that.msg('获取上传后的响应信息出现异常'); - clearInterval(Class.timer); - error(); - } - if(res){ - clearInterval(Class.timer); - iframeBody.html(''); - done(0, res); - } - }, 30); - } - - //统一回调 - ,done = function(index, res){ - that.elemFile.next('.'+ ELEM_CHOOSE).remove(); - elemFile.value = ''; - if(typeof res !== 'object'){ - try { - res = JSON.parse(res); - } catch(e){ - res = {}; - return that.msg('请对上传接口返回有效JSON'); - } - } - typeof options.done === 'function' && options.done(res, index || 0, function(files){ - that.upload(files); - }); - } - - //统一网络异常回调 - ,error = function(index){ - if(options.auto){ - elemFile.value = ''; - } - typeof options.error === 'function' && options.error(index || 0, function(files){ - that.upload(files); - }); - } - - ,exts = options.exts - ,check ,value = function(){ - var arr = []; - layui.each(files || that.chooseFiles, function(i, item){ - arr.push(item.name); - }); - return arr; - }() - - //回调返回的参数 - ,args = { - //预览 - preview: function(callback){ - that.preview(callback); - } - //上传 - ,upload: function(index, file){ - var thisFile = {}; - thisFile[index] = file; - that.upload(thisFile); - } - //追加文件到队列 - ,pushFile: function(){ - that.files = that.files || {}; - layui.each(that.chooseFiles, function(index, item){ - that.files[index] = item; - }); - return that.files; - } - //重置文件 - ,resetFile: function(index, file, filename){ - var newFile = new File([file], filename); - that.files = that.files || {}; - that.files[index] = newFile; - } - } - - //提交上传 - ,send = function(){ - //选择文件的回调 - if(type === 'choose' || options.auto){ - options.choose && options.choose(args); - if(type === 'choose'){ - return; - } - } - - //上传前的回调 - 如果回调函数明确返回false,则停止上传(#pulls55) - if(options.before && (options.before(args) === false)) return; - - //IE兼容处理 - if(device.ie){ - return device.ie > 9 ? ajaxSend() : iframeSend(); - } - - ajaxSend(); - } - - //校验文件格式 - value = value.length === 0 - ? ((elemFile.value.match(/[^\/\\]+\..+/g)||[]) || '') - : value; - - if(value.length === 0) return; - - switch(options.accept){ - case 'file': //一般文件 - if(exts && !RegExp('\\w\\.('+ exts +')$', 'i').test(escape(value))){ - that.msg('选择的文件中包含不支持的格式'); - return elemFile.value = ''; - } - break; - case 'video': //视频文件 - if(!RegExp('\\w\\.('+ (exts || 'avi|mp4|wma|rmvb|rm|flash|3gp|flv') +')$', 'i').test(escape(value))){ - that.msg('选择的视频中包含不支持的格式'); - return elemFile.value = ''; - } - break; - case 'audio': //音频文件 - if(!RegExp('\\w\\.('+ (exts || 'mp3|wav|mid') +')$', 'i').test(escape(value))){ - that.msg('选择的音频中包含不支持的格式'); - return elemFile.value = ''; - } - break; - default: //图片文件 - layui.each(value, function(i, item){ - if(!RegExp('\\w\\.('+ (exts || 'jpg|png|gif|bmp|jpeg$') +')', 'i').test(escape(item))){ - check = true; - } - }); - if(check){ - that.msg('选择的图片中包含不支持的格式'); - return elemFile.value = ''; - } - break; - } - - //检验文件数量 - that.fileLength = function(){ - var length = 0 - ,items = files || that.files || that.chooseFiles || elemFile.files; - layui.each(items, function(){ - length++; - }); - return length; - }(); - if(options.number && that.fileLength > options.number){ - return that.msg('同时最多只能上传的数量为:'+ options.number); - } - - //检验文件大小 - if(options.size > 0 && !(device.ie && device.ie < 10)){ - var limitSize; - - layui.each(that.chooseFiles, function(index, file){ - if(file.size > 1024*options.size){ - var size = options.size/1024; - size = size >= 1 ? (size.toFixed(2) + 'MB') : options.size + 'KB' - elemFile.value = ''; - limitSize = size; - } - }); - if(limitSize) return that.msg('文件不能超过'+ limitSize); - } - send(); - }; - - //重置方法 - Class.prototype.reload = function(options){ - options = options || {}; - delete options.elem; - delete options.bindAction; - - var that = this - ,options = that.config = $.extend({}, that.config, upload.config, options) - ,next = options.elem.next(); - - //更新文件域相关属性 - next.attr({ - name: options.name - ,accept: options.acceptMime - ,multiple: options.multiple - }); - }; - - //事件处理 - Class.prototype.events = function(){ - var that = this - ,options = that.config - - //设置当前选择的文件队列 - ,setChooseFile = function(files){ - that.chooseFiles = {}; - layui.each(files, function(i, item){ - var time = new Date().getTime(); - that.chooseFiles[time + '-' + i] = item; - }); - } - - //设置选择的文本 - ,setChooseText = function(files, filename){ - var elemFile = that.elemFile - ,item = options.item ? options.item : options.elem - ,value = files.length > 1 - ? files.length + '个文件' - : ((files[0] || {}).name || (elemFile[0].value.match(/[^\/\\]+\..+/g)||[]) || ''); - - if(elemFile.next().hasClass(ELEM_CHOOSE)){ - elemFile.next().remove(); - } - that.upload(null, 'choose'); - if(that.isFile() || options.choose) return; - elemFile.after(''+ value +''); - }; - - //点击上传容器 - options.elem.off('upload.start').on('upload.start', function(){ - var othis = $(this), data = othis.attr('lay-data'); - - if(data){ - try{ - data = new Function('return '+ data)(); - that.config = $.extend({}, options, data); - } catch(e){ - hint.error('Upload element property lay-data configuration item has a syntax error: ' + data) - } - } - - that.config.item = othis; - that.elemFile[0].click(); - }); - - //拖拽上传 - if(!(device.ie && device.ie < 10)){ - options.elem.off('upload.over').on('upload.over', function(){ - var othis = $(this) - othis.attr('lay-over', ''); - }) - .off('upload.leave').on('upload.leave', function(){ - var othis = $(this) - othis.removeAttr('lay-over'); - }) - .off('upload.drop').on('upload.drop', function(e, param){ - var othis = $(this), files = param.originalEvent.dataTransfer.files || []; - - othis.removeAttr('lay-over'); - setChooseFile(files); - - if(options.auto){ - that.upload(files); - } else { - setChooseText(files); - } - }); - } - - //文件选择 - that.elemFile.off('upload.change').on('upload.change', function(){ - var files = this.files || []; - setChooseFile(files); - options.auto ? that.upload() : setChooseText(files); //是否自动触发上传 - }); - - //手动触发上传 - options.bindAction.off('upload.action').on('upload.action', function(){ - that.upload(); - }); - - //防止事件重复绑定 - if(options.elem.data('haveEvents')) return; - - that.elemFile.on('change', function(){ - $(this).trigger('upload.change'); - }); - - options.elem.on('click', function(){ - if(that.isFile()) return; - $(this).trigger('upload.start'); - }); - - if(options.drag){ - options.elem.on('dragover', function(e){ - e.preventDefault(); - $(this).trigger('upload.over'); - }).on('dragleave', function(e){ - $(this).trigger('upload.leave'); - }).on('drop', function(e){ - e.preventDefault(); - $(this).trigger('upload.drop', e); - }); - } - - options.bindAction.on('click', function(){ - $(this).trigger('upload.action'); - }); - - options.elem.data('haveEvents', true); - }; - - //核心入口 - upload.render = function(options){ - var inst = new Class(options); - return thisUpload.call(inst); - }; - - exports(MOD_NAME, upload); -}); - diff --git a/static/Layui/v2.6.8/modules/util.js b/static/Layui/v2.6.8/modules/util.js deleted file mode 100644 index bb8b870..0000000 --- a/static/Layui/v2.6.8/modules/util.js +++ /dev/null @@ -1,248 +0,0 @@ - -/*! - * util 工具组件 -*/ - -layui.define('jquery', function(exports){ - "use strict"; - - var $ = layui.$ - ,hint = layui.hint() - - //外部接口 - ,util = { - //固定块 - fixbar: function(options){ - var ELEM = 'layui-fixbar', TOP_BAR = 'layui-fixbar-top' - ,dom = $(document), body = $('body') - ,is, timer; - - options = $.extend({ - showHeight: 200 //出现TOP的滚动条高度临界值 - }, options); - - options.bar1 = options.bar1 === true ? '' : options.bar1; - options.bar2 = options.bar2 === true ? '' : options.bar2; - options.bgcolor = options.bgcolor ? ('background-color:' + options.bgcolor) : ''; - - var icon = [options.bar1, options.bar2, ''] //图标:信息、问号、TOP - ,elem = $(['
            ' - ,options.bar1 ? '
          • '+ icon[0] +'
          • ' : '' - ,options.bar2 ? '
          • '+ icon[1] +'
          • ' : '' - ,'
          • '+ icon[2] +'
          • ' - ,'
          '].join('')) - ,topBar = elem.find('.'+TOP_BAR) - ,scroll = function(){ - var stop = dom.scrollTop(); - if(stop >= (options.showHeight)){ - is || (topBar.show(), is = 1); - } else { - is && (topBar.hide(), is = 0); - } - }; - if($('.'+ ELEM)[0]) return; - - typeof options.css === 'object' && elem.css(options.css); - body.append(elem), scroll(); - - //bar点击事件 - elem.find('li').on('click', function(){ - var othis = $(this), type = othis.attr('lay-type'); - if(type === 'top'){ - $('html,body').animate({ - scrollTop : 0 - }, 200); - } - options.click && options.click.call(this, type); - }); - - //Top显示控制 - dom.on('scroll', function(){ - clearTimeout(timer); - timer = setTimeout(function(){ - scroll(); - }, 100); - }); - } - - //倒计时 - ,countdown: function(endTime, serverTime, callback){ - var that = this - ,type = typeof serverTime === 'function' - ,end = new Date(endTime).getTime() - ,now = new Date((!serverTime || type) ? new Date().getTime() : serverTime).getTime() - ,count = end - now - ,time = [ - Math.floor(count/(1000*60*60*24)) //天 - ,Math.floor(count/(1000*60*60)) % 24 //时 - ,Math.floor(count/(1000*60)) % 60 //分 - ,Math.floor(count/1000) % 60 //秒 - ]; - - if(type) callback = serverTime; - - var timer = setTimeout(function(){ - that.countdown(endTime, now + 1000, callback); - }, 1000); - - callback && callback(count > 0 ? time : [0,0,0,0], serverTime, timer); - - if(count <= 0) clearTimeout(timer); - return timer; - } - - //某个时间在当前时间的多久前 - ,timeAgo: function(time, onlyDate){ - var that = this - ,arr = [[], []] - ,stamp = new Date().getTime() - new Date(time).getTime(); - - //返回具体日期 - if(stamp > 1000*60*60*24*31){ - stamp = new Date(time); - arr[0][0] = that.digit(stamp.getFullYear(), 4); - arr[0][1] = that.digit(stamp.getMonth() + 1); - arr[0][2] = that.digit(stamp.getDate()); - - //是否输出时间 - if(!onlyDate){ - arr[1][0] = that.digit(stamp.getHours()); - arr[1][1] = that.digit(stamp.getMinutes()); - arr[1][2] = that.digit(stamp.getSeconds()); - } - return arr[0].join('-') + ' ' + arr[1].join(':'); - } - - //30天以内,返回“多久前” - if(stamp >= 1000*60*60*24){ - return ((stamp/1000/60/60/24)|0) + '天前'; - } else if(stamp >= 1000*60*60){ - return ((stamp/1000/60/60)|0) + '小时前'; - } else if(stamp >= 1000*60*3){ //3分钟以内为:刚刚 - return ((stamp/1000/60)|0) + '分钟前'; - } else if(stamp < 0){ - return '未来'; - } else { - return '刚刚'; - } - } - - //数字前置补零 - ,digit: function(num, length){ - var str = ''; - num = String(num); - length = length || 2; - for(var i = num.length; i < length; i++){ - str += '0'; - } - return num < Math.pow(10, length) ? str + (num|0) : num; - } - - //转化为日期格式字符 - ,toDateString: function(time, format){ - //若 null 或空字符,则返回空字符 - if(time === null || time === '') return ''; - - var that = this - ,date = new Date(function(){ - if(!time) return; - return isNaN(time) ? time : (typeof time === 'string' ? parseInt(time) : time) - }() || new Date()) - ,ymd = [ - that.digit(date.getFullYear(), 4) - ,that.digit(date.getMonth() + 1) - ,that.digit(date.getDate()) - ] - ,hms = [ - that.digit(date.getHours()) - ,that.digit(date.getMinutes()) - ,that.digit(date.getSeconds()) - ]; - - if(!date.getDate()) return hint.error('Invalid Msec for "util.toDateString(Msec)"'), ''; - - format = format || 'yyyy-MM-dd HH:mm:ss'; - return format.replace(/yyyy/g, ymd[0]) - .replace(/MM/g, ymd[1]) - .replace(/dd/g, ymd[2]) - .replace(/HH/g, hms[0]) - .replace(/mm/g, hms[1]) - .replace(/ss/g, hms[2]); - } - - //转义 html,防 xss 攻击 - ,escape: function(html){ - return String(html || '').replace(/&(?!#?[a-zA-Z0-9]+;)/g, '&') - .replace(//g, '>') - .replace(/'/g, ''').replace(/"/g, '"'); - } - - //还原转义的 html - ,unescape: function(str){ - return String(str || '').replace(/\&/g, '&') - .replace(/\</g, '<').replace(/\>/g, '>') - .replace(/\'/, '\'').replace(/\"/, '"'); - } - - //让指定的元素保持在可视区域 - ,toVisibleArea: function(options){ - options = $.extend({ - margin: 160 //触发动作的边界值 - ,duration: 200 //动画持续毫秒数 - ,type: 'y' //触发方向,x 水平、y 垂直 - }, options); - - if(!options.scrollElem[0] || !options.thisElem[0]) return; - - var scrollElem = options.scrollElem //滚动元素 - ,thisElem = options.thisElem //目标元素 - ,vertical = options.type === 'y' //是否垂直方向 - ,SCROLL_NAME = vertical ? 'scrollTop' : 'scrollLeft' //滚动方法 - ,OFFSET_NAME = vertical ? 'top' : 'left' //坐标方式 - ,scrollValue = scrollElem[SCROLL_NAME]() //当前滚动距离 - ,size = scrollElem[vertical ? 'height' : 'width']() //滚动元素的尺寸 - ,scrollOffet = scrollElem.offset()[OFFSET_NAME] //滚动元素所处位置 - ,thisOffset = thisElem.offset()[OFFSET_NAME] - scrollOffet //目标元素当前的所在位置 - ,obj = {}; - - //边界满足条件 - if(thisOffset > size - options.margin || thisOffset < options.margin){ - obj[SCROLL_NAME] = thisOffset - size/2 + scrollValue - scrollElem.animate(obj, options.duration); - } - } - - //批量事件 - ,event: function(attr, obj, eventType){ - var _body = $('body'); - eventType = eventType || 'click'; - - //记录事件回调集合 - obj = util.event[attr] = $.extend(true, util.event[attr], obj) || {}; - - //清除委托事件 - util.event.UTIL_EVENT_CALLBACK = util.event.UTIL_EVENT_CALLBACK || {}; - _body.off(eventType, '*['+ attr +']', util.event.UTIL_EVENT_CALLBACK[attr]) - - //绑定委托事件 - util.event.UTIL_EVENT_CALLBACK[attr] = function(){ - var othis = $(this) - ,key = othis.attr(attr); - (typeof obj[key] === 'function') && obj[key].call(this, othis); - }; - - //清除旧事件,绑定新事件 - _body.on(eventType, '*['+ attr +']', util.event.UTIL_EVENT_CALLBACK[attr]); - - return obj; - } - }; - - // DOM 尺寸变化,该创意来自:http://benalman.com/projects/jquery-resize-plugin/ - /* - !function(a,b,c){"$:nomunge";function l(){f=b[g](function(){d.each(function(){var b=a(this),c=b.width(),d=b.height(),e=a.data(this,i);(c!==e.w||d!==e.h)&&b.trigger(h,[e.w=c,e.h=d])}),l()},e[j])}var f,d=a([]),e=a.resize=a.extend(a.resize,{}),g="setTimeout",h="resize",i=h+"-special-event",j="delay",k="throttleWindow";e[j]=250,e[k]=!0,a.event.special[h]={setup:function(){if(!e[k]&&this[g])return!1;var b=a(this);d=d.add(b),a.data(this,i,{w:b.width(),h:b.height()}),1===d.length&&l()},teardown:function(){if(!e[k]&&this[g])return!1;var b=a(this);d=d.not(b),b.removeData(i),d.length||clearTimeout(f)},add:function(b){function f(b,e,f){var g=a(this),h=a.data(this,i)||{};h.w=e!==c?e:g.width(),h.h=f!==c?f:g.height(),d.apply(this,arguments)}if(!e[k]&&this[g])return!1;var d;return a.isFunction(b)?(d=b,f):(d=b.handler,b.handler=f,void 0)}}}($,window); - */ - - //暴露接口 - exports('util', util); -}); \ No newline at end of file diff --git a/static/Layui/v2.8.3/css/layui.css b/static/Layui/v2.8.3/css/layui.css new file mode 100644 index 0000000..696f2cd --- /dev/null +++ b/static/Layui/v2.8.3/css/layui.css @@ -0,0 +1 @@ +blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}a:active,a:hover{outline:0}img{display:inline-block;border:none;vertical-align:middle}li{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4{font-weight:700}h5,h6{font-weight:500;font-size:100%}button,input,select,textarea{font-size:100%}button,input,optgroup,option,select,textarea{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;outline:0}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}body{line-height:1.6;color:#333;color:rgba(0,0,0,.85);font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif}hr{height:0;line-height:0;margin:10px 0;padding:0;border:none!important;border-bottom:1px solid #eee!important;clear:both;overflow:hidden;background:0 0}a{color:#333;text-decoration:none}a:hover{color:#777}a cite{font-style:normal;*cursor:pointer}.layui-border-box,.layui-border-box *{box-sizing:border-box}.layui-box,.layui-box *{box-sizing:content-box}.layui-clear{clear:both;*zoom:1}.layui-clear:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-clear-space{word-spacing:-5px}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.layui-edge{position:relative;display:inline-block;vertical-align:middle;width:0;height:0;border-width:6px;border-style:dashed;border-color:transparent;overflow:hidden}.layui-edge-top{top:-4px;border-bottom-color:#999;border-bottom-style:solid}.layui-edge-right{border-left-color:#999;border-left-style:solid}.layui-edge-bottom{top:2px;border-top-color:#999;border-top-style:solid}.layui-edge-left{border-right-color:#999;border-right-style:solid}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-disabled,.layui-icon,.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:hover{color:#d2d2d2!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-show-v{visibility:visible!important}.layui-hide-v{visibility:hidden!important}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=282);src:url(../font/iconfont.eot?v=282#iefix) format('embedded-opentype'),url(../font/iconfont.woff2?v=282) format('woff2'),url(../font/iconfont.woff?v=282) format('woff'),url(../font/iconfont.ttf?v=282) format('truetype'),url(../font/iconfont.svg?v=282#layui-icon) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-icon-leaf:before{content:"\e701"}.layui-icon-folder:before{content:"\eabe"}.layui-icon-folder-open:before{content:"\eac1"}.layui-icon-gitee:before{content:"\e69b"}.layui-icon-github:before{content:"\e6a7"}.layui-icon-disabled:before{content:"\e6cc"}.layui-icon-moon:before{content:"\e6c2"}.layui-icon-error:before{content:"\e693"}.layui-icon-success:before{content:"\e697"}.layui-icon-question:before{content:"\e699"}.layui-icon-lock:before{content:"\e69a"}.layui-icon-eye:before{content:"\e695"}.layui-icon-eye-invisible:before{content:"\e696"}.layui-icon-backspace:before{content:"\e694"}.layui-icon-tips-fill:before{content:"\eb2e"}.layui-icon-test:before{content:"\e692"}.layui-icon-clear:before{content:"\e788"}.layui-icon-heart-fill:before{content:"\e68f"}.layui-icon-light:before{content:"\e748"}.layui-icon-music:before{content:"\e690"}.layui-icon-time:before{content:"\e68d"}.layui-icon-ie:before{content:"\e7bb"}.layui-icon-firefox:before{content:"\e686"}.layui-icon-at:before{content:"\e687"}.layui-icon-bluetooth:before{content:"\e689"}.layui-icon-chrome:before{content:"\e68a"}.layui-icon-edge:before{content:"\e68b"}.layui-icon-heart:before{content:"\e68c"}.layui-icon-key:before{content:"\e683"}.layui-icon-android:before{content:"\e684"}.layui-icon-mike:before{content:"\e6dc"}.layui-icon-mute:before{content:"\e685"}.layui-icon-gift:before{content:"\e627"}.layui-icon-windows:before{content:"\e67f"}.layui-icon-ios:before{content:"\e680"}.layui-icon-logout:before{content:"\e682"}.layui-icon-wifi:before{content:"\e7e0"}.layui-icon-rss:before{content:"\e808"}.layui-icon-email:before{content:"\e618"}.layui-icon-reduce-circle:before{content:"\e616"}.layui-icon-transfer:before{content:"\e691"}.layui-icon-service:before{content:"\e626"}.layui-icon-addition:before{content:"\e624"}.layui-icon-subtraction:before{content:"\e67e"}.layui-icon-slider:before{content:"\e714"}.layui-icon-print:before{content:"\e66d"}.layui-icon-export:before{content:"\e67d"}.layui-icon-cols:before{content:"\e610"}.layui-icon-screen-full:before{content:"\e622"}.layui-icon-screen-restore:before{content:"\e758"}.layui-icon-rate-half:before{content:"\e6c9"}.layui-icon-rate-solid:before{content:"\e67a"}.layui-icon-rate:before{content:"\e67b"}.layui-icon-cellphone:before{content:"\e678"}.layui-icon-vercode:before{content:"\e679"}.layui-icon-login-weibo:before{content:"\e675"}.layui-icon-login-qq:before{content:"\e676"}.layui-icon-login-wechat:before{content:"\e677"}.layui-icon-username:before{content:"\e66f"}.layui-icon-password:before{content:"\e673"}.layui-icon-refresh-3:before{content:"\e9aa"}.layui-icon-auz:before{content:"\e672"}.layui-icon-shrink-right:before{content:"\e668"}.layui-icon-spread-left:before{content:"\e66b"}.layui-icon-snowflake:before{content:"\e6b1"}.layui-icon-tips:before{content:"\e702"}.layui-icon-note:before{content:"\e66e"}.layui-icon-senior:before{content:"\e674"}.layui-icon-refresh-1:before{content:"\e666"}.layui-icon-refresh:before{content:"\e669"}.layui-icon-flag:before{content:"\e66c"}.layui-icon-theme:before{content:"\e66a"}.layui-icon-notice:before{content:"\e667"}.layui-icon-console:before{content:"\e665"}.layui-icon-website:before{content:"\e7ae"}.layui-icon-face-surprised:before{content:"\e664"}.layui-icon-set:before{content:"\e716"}.layui-icon-template:before{content:"\e663"}.layui-icon-app:before{content:"\e653"}.layui-icon-template-1:before{content:"\e656"}.layui-icon-home:before{content:"\e68e"}.layui-icon-female:before{content:"\e661"}.layui-icon-male:before{content:"\e662"}.layui-icon-tread:before{content:"\e6c5"}.layui-icon-praise:before{content:"\e6c6"}.layui-icon-rmb:before{content:"\e65e"}.layui-icon-more:before{content:"\e65f"}.layui-icon-camera:before{content:"\e660"}.layui-icon-cart-simple:before{content:"\e698"}.layui-icon-face-cry:before{content:"\e69c"}.layui-icon-face-smile:before{content:"\e6af"}.layui-icon-survey:before{content:"\e6b2"}.layui-icon-read:before{content:"\e705"}.layui-icon-location:before{content:"\e715"}.layui-icon-dollar:before{content:"\e659"}.layui-icon-diamond:before{content:"\e735"}.layui-icon-return:before{content:"\e65c"}.layui-icon-camera-fill:before{content:"\e65d"}.layui-icon-fire:before{content:"\e756"}.layui-icon-more-vertical:before{content:"\e671"}.layui-icon-cart:before{content:"\e657"}.layui-icon-star-fill:before{content:"\e658"}.layui-icon-prev:before{content:"\e65a"}.layui-icon-next:before{content:"\e65b"}.layui-icon-upload:before{content:"\e67c"}.layui-icon-upload-drag:before{content:"\e681"}.layui-icon-user:before{content:"\e770"}.layui-icon-file-b:before{content:"\e655"}.layui-icon-component:before{content:"\e857"}.layui-icon-find-fill:before{content:"\e670"}.layui-icon-loading:before{content:"\e63d"}.layui-icon-loading-1:before{content:"\e63e"}.layui-icon-add-1:before{content:"\e654"}.layui-icon-pause:before{content:"\e651"}.layui-icon-play:before{content:"\e652"}.layui-icon-video:before{content:"\e6ed"}.layui-icon-headset:before{content:"\e6fc"}.layui-icon-voice:before{content:"\e688"}.layui-icon-speaker:before{content:"\e645"}.layui-icon-fonts-del:before{content:"\e64f"}.layui-icon-fonts-html:before{content:"\e64b"}.layui-icon-fonts-code:before{content:"\e64e"}.layui-icon-fonts-strong:before{content:"\e62b"}.layui-icon-unlink:before{content:"\e64d"}.layui-icon-picture:before{content:"\e64a"}.layui-icon-link:before{content:"\e64c"}.layui-icon-face-smile-b:before{content:"\e650"}.layui-icon-align-center:before{content:"\e647"}.layui-icon-align-right:before{content:"\e648"}.layui-icon-align-left:before{content:"\e649"}.layui-icon-fonts-u:before{content:"\e646"}.layui-icon-fonts-i:before{content:"\e644"}.layui-icon-tabs:before{content:"\e62a"}.layui-icon-circle:before{content:"\e63f"}.layui-icon-radio:before{content:"\e643"}.layui-icon-share:before{content:"\e641"}.layui-icon-edit:before{content:"\e642"}.layui-icon-delete:before{content:"\e640"}.layui-icon-engine:before{content:"\e628"}.layui-icon-chart-screen:before{content:"\e629"}.layui-icon-chart:before{content:"\e62c"}.layui-icon-table:before{content:"\e62d"}.layui-icon-tree:before{content:"\e62e"}.layui-icon-upload-circle:before{content:"\e62f"}.layui-icon-templeate-1:before{content:"\e630"}.layui-icon-util:before{content:"\e631"}.layui-icon-layouts:before{content:"\e632"}.layui-icon-prev-circle:before{content:"\e633"}.layui-icon-carousel:before{content:"\e634"}.layui-icon-code-circle:before{content:"\e635"}.layui-icon-water:before{content:"\e636"}.layui-icon-date:before{content:"\e637"}.layui-icon-layer:before{content:"\e638"}.layui-icon-fonts-clear:before{content:"\e639"}.layui-icon-dialogue:before{content:"\e63a"}.layui-icon-cellphone-fine:before{content:"\e63b"}.layui-icon-form:before{content:"\e63c"}.layui-icon-file:before{content:"\e621"}.layui-icon-triangle-r:before{content:"\e623"}.layui-icon-triangle-d:before{content:"\e625"}.layui-icon-set-sm:before{content:"\e620"}.layui-icon-add-circle:before{content:"\e61f"}.layui-icon-layim-download:before{content:"\e61e"}.layui-icon-layim-uploadfile:before{content:"\e61d"}.layui-icon-404:before{content:"\e61c"}.layui-icon-about:before{content:"\e60b"}.layui-icon-layim-theme:before{content:"\e61b"}.layui-icon-down:before{content:"\e61a"}.layui-icon-up:before{content:"\e619"}.layui-icon-circle-dot:before{content:"\e617"}.layui-icon-set-fill:before{content:"\e614"}.layui-icon-search:before{content:"\e615"}.layui-icon-friends:before{content:"\e612"}.layui-icon-group:before{content:"\e613"}.layui-icon-reply-fill:before{content:"\e611"}.layui-icon-menu-fill:before{content:"\e60f"}.layui-icon-face-smile-fine:before{content:"\e60c"}.layui-icon-picture-fine:before{content:"\e60d"}.layui-icon-log:before{content:"\e60e"}.layui-icon-list:before{content:"\e60a"}.layui-icon-release:before{content:"\e609"}.layui-icon-add-circle-fine:before{content:"\e608"}.layui-icon-ok:before{content:"\e605"}.layui-icon-help:before{content:"\e607"}.layui-icon-chat:before{content:"\e606"}.layui-icon-top:before{content:"\e604"}.layui-icon-right:before{content:"\e602"}.layui-icon-left:before{content:"\e603"}.layui-icon-star:before{content:"\e600"}.layui-icon-download-circle:before{content:"\e601"}.layui-icon-close:before{content:"\1006"}.layui-icon-close-fill:before{content:"\1007"}.layui-icon-ok-circle:before{content:"\1005"}.layui-main{position:relative;width:1160px;margin:0 auto}.layui-header{position:relative;z-index:1000;height:60px}.layui-header a:hover{transition:all .5s;-webkit-transition:all .5s}.layui-side{position:fixed;left:0;top:0;bottom:0;z-index:999;width:200px;overflow-x:hidden}.layui-side-scroll{position:relative;width:220px;height:100%;overflow-x:hidden}.layui-body{position:relative;left:200px;right:0;top:0;bottom:0;z-index:900;width:auto;box-sizing:border-box}.layui-layout-body{overflow-x:hidden}.layui-layout-admin .layui-header{position:fixed;top:0;left:0;right:0;background-color:#23292e}.layui-layout-admin .layui-side{top:60px;width:200px;overflow-x:hidden}.layui-layout-admin .layui-body{position:absolute;top:60px;padding-bottom:44px}.layui-layout-admin .layui-main{width:auto;margin:0 15px}.layui-layout-admin .layui-footer{position:fixed;left:200px;right:0;bottom:0;z-index:990;height:44px;line-height:44px;padding:0 15px;box-shadow:-1px 0 4px rgb(0 0 0 / 12%);background-color:#fafafa}.layui-layout-admin .layui-logo{position:absolute;left:0;top:0;width:200px;height:100%;line-height:60px;text-align:center;color:#16baaa;font-size:16px;box-shadow:0 1px 2px 0 rgb(0 0 0 / 15%)}.layui-layout-admin .layui-header .layui-nav{background:0 0}.layui-layout-left{position:absolute!important;left:200px;top:0}.layui-layout-right{position:absolute!important;right:0;top:0}.layui-container{position:relative;margin:0 auto;box-sizing:border-box}.layui-fluid{position:relative;margin:0 auto;padding:0 15px}.layui-row:after,.layui-row:before{content:"";display:block;clear:both}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9,.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9,.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9,.layui-col-xl1,.layui-col-xl10,.layui-col-xl11,.layui-col-xl12,.layui-col-xl2,.layui-col-xl3,.layui-col-xl4,.layui-col-xl5,.layui-col-xl6,.layui-col-xl7,.layui-col-xl8,.layui-col-xl9,.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{position:relative;display:block;box-sizing:border-box}.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{float:left}.layui-col-xs1{width:8.33333333%}.layui-col-xs2{width:16.66666667%}.layui-col-xs3{width:25%}.layui-col-xs4{width:33.33333333%}.layui-col-xs5{width:41.66666667%}.layui-col-xs6{width:50%}.layui-col-xs7{width:58.33333333%}.layui-col-xs8{width:66.66666667%}.layui-col-xs9{width:75%}.layui-col-xs10{width:83.33333333%}.layui-col-xs11{width:91.66666667%}.layui-col-xs12{width:100%}.layui-col-xs-offset1{margin-left:8.33333333%}.layui-col-xs-offset2{margin-left:16.66666667%}.layui-col-xs-offset3{margin-left:25%}.layui-col-xs-offset4{margin-left:33.33333333%}.layui-col-xs-offset5{margin-left:41.66666667%}.layui-col-xs-offset6{margin-left:50%}.layui-col-xs-offset7{margin-left:58.33333333%}.layui-col-xs-offset8{margin-left:66.66666667%}.layui-col-xs-offset9{margin-left:75%}.layui-col-xs-offset10{margin-left:83.33333333%}.layui-col-xs-offset11{margin-left:91.66666667%}.layui-col-xs-offset12{margin-left:100%}@media screen and (max-width:767.98px){.layui-container{padding:0 15px}.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){.layui-container{width:720px}.layui-hide-sm{display:none!important}.layui-show-sm-block{display:block!important}.layui-show-sm-inline{display:inline!important}.layui-show-sm-inline-block{display:inline-block!important}.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9{float:left}.layui-col-sm1{width:8.33333333%}.layui-col-sm2{width:16.66666667%}.layui-col-sm3{width:25%}.layui-col-sm4{width:33.33333333%}.layui-col-sm5{width:41.66666667%}.layui-col-sm6{width:50%}.layui-col-sm7{width:58.33333333%}.layui-col-sm8{width:66.66666667%}.layui-col-sm9{width:75%}.layui-col-sm10{width:83.33333333%}.layui-col-sm11{width:91.66666667%}.layui-col-sm12{width:100%}.layui-col-sm-offset1{margin-left:8.33333333%}.layui-col-sm-offset2{margin-left:16.66666667%}.layui-col-sm-offset3{margin-left:25%}.layui-col-sm-offset4{margin-left:33.33333333%}.layui-col-sm-offset5{margin-left:41.66666667%}.layui-col-sm-offset6{margin-left:50%}.layui-col-sm-offset7{margin-left:58.33333333%}.layui-col-sm-offset8{margin-left:66.66666667%}.layui-col-sm-offset9{margin-left:75%}.layui-col-sm-offset10{margin-left:83.33333333%}.layui-col-sm-offset11{margin-left:91.66666667%}.layui-col-sm-offset12{margin-left:100%}}@media screen and (min-width:992px){.layui-container{width:960px}.layui-hide-md{display:none!important}.layui-show-md-block{display:block!important}.layui-show-md-inline{display:inline!important}.layui-show-md-inline-block{display:inline-block!important}.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9{float:left}.layui-col-md1{width:8.33333333%}.layui-col-md2{width:16.66666667%}.layui-col-md3{width:25%}.layui-col-md4{width:33.33333333%}.layui-col-md5{width:41.66666667%}.layui-col-md6{width:50%}.layui-col-md7{width:58.33333333%}.layui-col-md8{width:66.66666667%}.layui-col-md9{width:75%}.layui-col-md10{width:83.33333333%}.layui-col-md11{width:91.66666667%}.layui-col-md12{width:100%}.layui-col-md-offset1{margin-left:8.33333333%}.layui-col-md-offset2{margin-left:16.66666667%}.layui-col-md-offset3{margin-left:25%}.layui-col-md-offset4{margin-left:33.33333333%}.layui-col-md-offset5{margin-left:41.66666667%}.layui-col-md-offset6{margin-left:50%}.layui-col-md-offset7{margin-left:58.33333333%}.layui-col-md-offset8{margin-left:66.66666667%}.layui-col-md-offset9{margin-left:75%}.layui-col-md-offset10{margin-left:83.33333333%}.layui-col-md-offset11{margin-left:91.66666667%}.layui-col-md-offset12{margin-left:100%}}@media screen and (min-width:1200px){.layui-container{width:1150px}.layui-hide-lg{display:none!important}.layui-show-lg-block{display:block!important}.layui-show-lg-inline{display:inline!important}.layui-show-lg-inline-block{display:inline-block!important}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9{float:left}.layui-col-lg1{width:8.33333333%}.layui-col-lg2{width:16.66666667%}.layui-col-lg3{width:25%}.layui-col-lg4{width:33.33333333%}.layui-col-lg5{width:41.66666667%}.layui-col-lg6{width:50%}.layui-col-lg7{width:58.33333333%}.layui-col-lg8{width:66.66666667%}.layui-col-lg9{width:75%}.layui-col-lg10{width:83.33333333%}.layui-col-lg11{width:91.66666667%}.layui-col-lg12{width:100%}.layui-col-lg-offset1{margin-left:8.33333333%}.layui-col-lg-offset2{margin-left:16.66666667%}.layui-col-lg-offset3{margin-left:25%}.layui-col-lg-offset4{margin-left:33.33333333%}.layui-col-lg-offset5{margin-left:41.66666667%}.layui-col-lg-offset6{margin-left:50%}.layui-col-lg-offset7{margin-left:58.33333333%}.layui-col-lg-offset8{margin-left:66.66666667%}.layui-col-lg-offset9{margin-left:75%}.layui-col-lg-offset10{margin-left:83.33333333%}.layui-col-lg-offset11{margin-left:91.66666667%}.layui-col-lg-offset12{margin-left:100%}}@media screen and (min-width:1400px){.layui-container{width:1330px}.layui-hide-xl{display:none!important}.layui-show-xl-block{display:block!important}.layui-show-xl-inline{display:inline!important}.layui-show-xl-inline-block{display:inline-block!important}.layui-col-xl1,.layui-col-xl10,.layui-col-xl11,.layui-col-xl12,.layui-col-xl2,.layui-col-xl3,.layui-col-xl4,.layui-col-xl5,.layui-col-xl6,.layui-col-xl7,.layui-col-xl8,.layui-col-xl9{float:left}.layui-col-xl1{width:8.33333333%}.layui-col-xl2{width:16.66666667%}.layui-col-xl3{width:25%}.layui-col-xl4{width:33.33333333%}.layui-col-xl5{width:41.66666667%}.layui-col-xl6{width:50%}.layui-col-xl7{width:58.33333333%}.layui-col-xl8{width:66.66666667%}.layui-col-xl9{width:75%}.layui-col-xl10{width:83.33333333%}.layui-col-xl11{width:91.66666667%}.layui-col-xl12{width:100%}.layui-col-xl-offset1{margin-left:8.33333333%}.layui-col-xl-offset2{margin-left:16.66666667%}.layui-col-xl-offset3{margin-left:25%}.layui-col-xl-offset4{margin-left:33.33333333%}.layui-col-xl-offset5{margin-left:41.66666667%}.layui-col-xl-offset6{margin-left:50%}.layui-col-xl-offset7{margin-left:58.33333333%}.layui-col-xl-offset8{margin-left:66.66666667%}.layui-col-xl-offset9{margin-left:75%}.layui-col-xl-offset10{margin-left:83.33333333%}.layui-col-xl-offset11{margin-left:91.66666667%}.layui-col-xl-offset12{margin-left:100%}}.layui-col-space1{margin:-.5px}.layui-col-space1>*{padding:.5px}.layui-col-space2{margin:-1px}.layui-col-space2>*{padding:1px}.layui-col-space4{margin:-2px}.layui-col-space4>*{padding:2px}.layui-col-space5{margin:-2.5px}.layui-col-space5>*{padding:2.5px}.layui-col-space6{margin:-3px}.layui-col-space6>*{padding:3px}.layui-col-space8{margin:-4px}.layui-col-space8>*{padding:4px}.layui-col-space10{margin:-5px}.layui-col-space10>*{padding:5px}.layui-col-space12{margin:-6px}.layui-col-space12>*{padding:6px}.layui-col-space14{margin:-7px}.layui-col-space14>*{padding:7px}.layui-col-space15{margin:-7.5px}.layui-col-space15>*{padding:7.5px}.layui-col-space16{margin:-8px}.layui-col-space16>*{padding:8px}.layui-col-space18{margin:-9px}.layui-col-space18>*{padding:9px}.layui-col-space20{margin:-10px}.layui-col-space20>*{padding:10px}.layui-col-space22{margin:-11px}.layui-col-space22>*{padding:11px}.layui-col-space24{margin:-12px}.layui-col-space24>*{padding:12px}.layui-col-space25{margin:-12.5px}.layui-col-space25>*{padding:12.5px}.layui-col-space26{margin:-13px}.layui-col-space26>*{padding:13px}.layui-col-space28{margin:-14px}.layui-col-space28>*{padding:14px}.layui-col-space30{margin:-15px}.layui-col-space30>*{padding:15px}.layui-col-space32{margin:-15px}.layui-col-space32>*{padding:15px}.layui-btn,.layui-input,.layui-select,.layui-textarea,.layui-upload-button{outline:0;-webkit-appearance:none;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-elem-quote{margin-bottom:10px;padding:15px;line-height:1.8;border-left:5px solid #16b777;border-radius:0 2px 2px 0;background-color:#fafafa}.layui-quote-nm{border-style:solid;border-width:1px;border-left-width:5px;background:0 0}.layui-elem-field{margin-bottom:10px;padding:0;border-width:1px;border-style:solid}.layui-elem-field legend{margin-left:20px;padding:0 10px;font-size:20px}.layui-field-title{margin:16px 0;border-width:0;border-top-width:1px}.layui-field-box{padding:15px}.layui-field-title .layui-field-box{padding:10px 0}.layui-progress{position:relative;height:6px;border-radius:20px;background-color:#eee}.layui-progress-bar{position:absolute;left:0;top:0;width:0;max-width:100%;height:6px;border-radius:20px;text-align:right;background-color:#16b777;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:-20px;line-height:18px;font-size:12px;color:#5f5f5f}.layui-progress-big .layui-progress-text{position:static;padding:0 10px;color:#fff}.layui-collapse{border-width:1px;border-style:solid;border-radius:2px}.layui-colla-content,.layui-colla-item{border-top-width:1px;border-top-style:solid}.layui-colla-item:first-child{border-top:none}.layui-colla-title{position:relative;height:42px;line-height:42px;padding:0 15px 0 35px;color:#333;background-color:#fafafa;cursor:pointer;font-size:14px;overflow:hidden}.layui-colla-content{display:none;padding:10px 15px;line-height:1.6;color:#5f5f5f}.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 #f8f8f8;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[pad15]{padding:15px}.layui-card-body[pad20]{padding:20px}.layui-card-body .layui-table{margin:5px 0}.layui-card .layui-tab{margin:0}.layui-panel{position:relative;border-width:1px;border-style:solid;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);background-color:#fff;color:#5f5f5f}.layui-panel-window{position:relative;padding:15px;border-radius:0;border-top:5px solid #eee;background-color:#fff}.layui-auxiliar-moving{position:fixed;left:0;right:0;top:0;bottom:0;width:100%;height:100%;background:0 0;z-index:9999999999}.layui-scollbar-hide{overflow:hidden!important}.layui-bg-red{background-color:#ff5722!important;color:#fff!important}.layui-bg-orange{background-color:#ffb800!important;color:#fff!important}.layui-bg-green{background-color:#16baaa!important;color:#fff!important}.layui-bg-cyan{background-color:#2f4056!important;color:#fff!important}.layui-bg-blue{background-color:#1e9fff!important;color:#fff!important}.layui-bg-purple{background-color:#a233c6!important;color:#fff!important}.layui-bg-black{background-color:#2f363c!important;color:#fff!important}.layui-bg-gray{background-color:#fafafa!important;color:#5f5f5f!important}.layui-badge-rim,.layui-border,.layui-colla-content,.layui-colla-item,.layui-collapse,.layui-elem-field,.layui-form-pane .layui-form-item[pane],.layui-form-pane .layui-form-label,.layui-input,.layui-input-split,.layui-panel,.layui-quote-nm,.layui-select,.layui-tab-bar,.layui-tab-card,.layui-tab-title,.layui-tab-title .layui-this:after,.layui-textarea{border-color:#eee}.layui-border{border-width:1px;border-style:solid;color:#5f5f5f!important}.layui-border-red{border-width:1px;border-style:solid;border-color:#ff5722!important;color:#ff5722!important}.layui-border-orange{border-width:1px;border-style:solid;border-color:#ffb800!important;color:#ffb800!important}.layui-border-green{border-width:1px;border-style:solid;border-color:#16baaa!important;color:#16baaa!important}.layui-border-cyan{border-width:1px;border-style:solid;border-color:#2f4056!important;color:#2f4056!important}.layui-border-blue{border-width:1px;border-style:solid;border-color:#1e9fff!important;color:#1e9fff!important}.layui-border-purple{border-width:1px;border-style:solid;border-color:#a233c6!important;color:#a233c6!important}.layui-border-black{border-width:1px;border-style:solid;border-color:#2f363c!important;color:#2f363c!important}.layui-timeline-item:before{background-color:#eee}.layui-text{line-height:1.8;font-size:14px}.layui-text h1,.layui-text h2,.layui-text h3,.layui-text h4,.layui-text h5,.layui-text h6{color:#3a3a3a}.layui-text h1{font-size:32px}.layui-text h2{font-size:24px}.layui-text h3{font-size:18px}.layui-text h4{font-size:16px}.layui-text h5{font-size:14px}.layui-text h6{font-size:13px}.layui-text ol,.layui-text ul{padding-left:15px}.layui-text ul li{margin-top:5px;list-style-type:disc}.layui-text ol li{margin-top:5px;list-style-type:decimal}.layui-text-em,.layui-word-aux{color:#999!important;padding-left:5px!important;padding-right:5px!important}.layui-text p{margin:15px 0}.layui-text p:first-child{margin-top:0}.layui-text p:last-child{margin-bottom:0}.layui-text a:not(.layui-btn){color:#01aaed}.layui-text a:not(.layui-btn):hover{text-decoration:underline}.layui-text blockquote:not(.layui-elem-quote){padding:5px 15px;border-left:5px solid #eee}.layui-text pre>code:not(.layui-code){padding:15px;font-family:Courier New,Lucida Console,Consolas;background-color:#fafafa}.layui-font-12{font-size:12px!important}.layui-font-13{font-size:13px!important}.layui-font-14{font-size:14px!important}.layui-font-16{font-size:16px!important}.layui-font-18{font-size:18px!important}.layui-font-20{font-size:20px!important}.layui-font-22{font-size:22px!important}.layui-font-24{font-size:24px!important}.layui-font-26{font-size:26px!important}.layui-font-28{font-size:28px!important}.layui-font-30{font-size:30px!important}.layui-font-32{font-size:32px!important}.layui-font-red{color:#ff5722!important}.layui-font-orange{color:#ffb800!important}.layui-font-green{color:#16baaa!important}.layui-font-cyan{color:#2f4056!important}.layui-font-blue{color:#01aaed!important}.layui-font-purple{color:#a233c6!important}.layui-font-black{color:#000!important}.layui-font-gray{color:#c2c2c2!important}.layui-btn{display:inline-block;vertical-align:middle;height:38px;line-height:38px;border:1px solid transparent;padding:0 18px;background-color:#16baaa;color:#fff;white-space:nowrap;text-align:center;font-size:14px;border-radius:2px;cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-btn:hover{opacity:.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{word-spacing:-5px}.layui-btn-container .layui-btn{margin-right:10px;margin-bottom:10px;word-spacing:normal}.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{padding:0 2px;vertical-align:middle\0;vertical-align:bottom}.layui-btn-primary{border-color:#d2d2d2;background:0 0;color:#5f5f5f}.layui-btn-primary:hover{border-color:#16baaa;color:#333}.layui-btn-normal{background-color:#1e9fff}.layui-btn-warm{background-color:#ffb800}.layui-btn-danger{background-color:#ff5722}.layui-btn-checked{background-color:#16b777}.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border-color:#eee!important;background-color:#fbfbfb!important;color:#d2d2d2!important;cursor:not-allowed!important;opacity:1}.layui-btn-lg{height:44px;line-height:44px;padding:0 25px;font-size:16px}.layui-btn-sm{height:30px;line-height:30px;padding:0 10px;font-size:12px}.layui-btn-xs{height:22px;line-height:22px;padding:0 5px;font-size:12px}.layui-btn-xs i{font-size:12px!important}.layui-btn-group{display:inline-block;vertical-align:middle;font-size:0}.layui-btn-group .layui-btn{margin-left:0!important;margin-right:0!important;border-left:1px solid rgba(255,255,255,.5);border-radius:0}.layui-btn-group .layui-btn-primary{border-left:none}.layui-btn-group .layui-btn-primary:hover{border-color:#d2d2d2;color:#16baaa}.layui-btn-group .layui-btn:first-child{border-left:none;border-radius:2px 0 0 2px}.layui-btn-group .layui-btn-primary:first-child{border-left:1px solid #d2d2d2}.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-select,.layui-textarea{height:38px;line-height:1.3;line-height:38px\9;border-width:1px;border-style:solid;background-color:#fff;color:rgba(0,0,0,.85);border-radius:2px}.layui-input::-webkit-input-placeholder,.layui-select::-webkit-input-placeholder,.layui-textarea::-webkit-input-placeholder{line-height:1.3}.layui-input,.layui-textarea{display:block;width:100%;padding-left:10px}.layui-input:hover,.layui-textarea:hover{border-color:#d2d2d2!important}.layui-input:focus,.layui-textarea:focus{border-color:#d2d2d2!important}.layui-textarea{position:relative;min-height:100px;height:auto;line-height:20px;padding:6px 10px;resize:vertical}.layui-select{padding:0 10px}.layui-form input[type=checkbox],.layui-form input[type=radio],.layui-form select{display:none}.layui-form [lay-ignore]{display:initial}.layui-form-item{position:relative;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: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}.layui-input-inline{display:inline-block;vertical-align:middle}.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:9px 0!important;line-height:20px;margin-right:10px}.layui-form-danger+.layui-form-select .layui-input,.layui-form-danger:focus{border-color:#ff5722!important}.layui-input-prefix,.layui-input-split,.layui-input-suffix,.layui-input-suffix .layui-input-affix{position:absolute;right:0;top:0;padding:0 10px;width:35px;height:100%;text-align:center;transition:all .3s;box-sizing:border-box}.layui-input-prefix{left:0;border-radius:2px 0 0 2px}.layui-input-suffix{right:0;border-radius:0 2px 2px 0}.layui-input-split{border-width:1px;border-style:solid}.layui-input-prefix .layui-icon,.layui-input-split .layui-icon,.layui-input-suffix .layui-icon{position:relative;font-size:16px;color:#5f5f5f;transition:all .3s}.layui-input-group{position:relative;display:table;box-sizing:border-box}.layui-input-group>*{display:table-cell;vertical-align:middle;position:relative}.layui-input-group .layui-input{padding-right:15px}.layui-input-group .layui-input-prefix{width:auto;border-right:0}.layui-input-group .layui-input-suffix{width:auto;border-left:0}.layui-input-group .layui-input-split{white-space:nowrap}.layui-input-wrap{position:relative;line-height:38px}.layui-input-wrap .layui-input{padding-right:35px}.layui-input-wrap .layui-input::-ms-clear,.layui-input-wrap .layui-input::-ms-reveal{display:none}.layui-input-wrap .layui-input-prefix+.layui-input,.layui-input-wrap .layui-input-prefix~* .layui-input{padding-left:35px}.layui-input-wrap .layui-input-split+.layui-input,.layui-input-wrap .layui-input-split~* .layui-input{padding-left:45px}.layui-input-wrap .layui-input-prefix~.layui-form-select{position:static}.layui-input-wrap .layui-input-prefix,.layui-input-wrap .layui-input-split,.layui-input-wrap .layui-input-suffix{pointer-events:none}.layui-input-wrap .layui-input:focus+.layui-input-split{border-color:#d2d2d2}.layui-input-wrap .layui-input-prefix.layui-input-split{border-width:0;border-right-width:1px}.layui-input-affix{line-height:38px}.layui-input-suffix .layui-input-affix{right:auto;left:-35px}.layui-input-affix .layui-icon{color:rgba(0,0,0,.8);pointer-events:auto!important;cursor:pointer}.layui-input-affix .layui-icon-clear{color:rgba(0,0,0,.3)}.layui-input-affix .layui-icon:hover{color:rgba(0,0,0,.6)}.layui-form-select{position:relative;color:#5f5f5f}.layui-form-select .layui-input{padding-right:30px;cursor:pointer}.layui-form-select .layui-edge{position:absolute;right:10px;top:50%;margin-top:-3px;cursor:pointer;border-width:6px;border-top-color:#c2c2c2;border-top-style:solid;transition:all .3s;-webkit-transition:all .3s}.layui-form-select dl{display:none;position:absolute;left:0;top:42px;padding:5px 0;z-index:899;min-width:100%;border:1px solid #eee;max-height:300px;overflow-y:auto;background-color:#fff;border-radius:2px;box-shadow:1px 1px 4px rgb(0 0 0 / 8%);box-sizing:border-box}.layui-form-select dl dd,.layui-form-select dl dt{padding:0 10px;line-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layui-form-select dl dt{font-size:12px;color:#999}.layui-form-select dl dd{cursor:pointer}.layui-form-select dl dd:hover{background-color:#f8f8f8;-webkit-transition:.5s all;transition:.5s all}.layui-form-select .layui-select-group dd{padding-left:20px}.layui-form-select dl dd.layui-select-tips{padding-left:10px!important;color:#999}.layui-form-select dl dd.layui-this{background-color:#f8f8f8;color:#16b777;font-weight:700}.layui-form-select dl dd.layui-disabled{background-color:#fff}.layui-form-selected dl{display:block}.layui-form-selected .layui-edge{margin-top:-9px;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.layui-form-selected .layui-edge{margin-top:-3px\0}:root .layui-form-selected .layui-edge{margin-top:-9px\0/IE9}.layui-form-selectup dl{top:auto;bottom:42px}.layui-select-none{margin:5px 0;text-align:center;color:#999}.layui-select-disabled .layui-disabled{border-color:#eee!important}.layui-select-disabled .layui-edge{border-top-color:#d2d2d2}.layui-form-checkbox{position:relative;display:inline-block;vertical-align:middle;height:30px;line-height:30px;margin-right:10px;padding-right:30px;background-color:#fff;cursor:pointer;font-size:0;-webkit-transition:.1s linear;transition:.1s linear;box-sizing:border-box}.layui-form-checkbox>*{display:inline-block;vertical-align:middle}.layui-form-checkbox>div{padding:0 11px;height:100%;font-size:14px;border-radius:2px 0 0 2px;background-color:#d2d2d2;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.layui-form-checkbox:hover>div{background-color:#c2c2c2}.layui-form-checkbox>i{position:absolute;right:0;top:0;width:30px;height:100%;border:1px solid #d2d2d2;border-left:none;border-radius:0 2px 2px 0;color:#fff;color:rgba(255,255,255,0);font-size:20px;text-align:center;box-sizing:border-box}.layui-form-checkbox:hover>i{border-color:#c2c2c2;color:#c2c2c2}.layui-form-checked,.layui-form-checked:hover{border-color:#16b777}.layui-form-checked:hover>div,.layui-form-checked>div{background-color:#16b777}.layui-form-checked:hover>i,.layui-form-checked>i{color:#16b777}.layui-form-item .layui-form-checkbox{margin-top:4px}.layui-form-checkbox.layui-checkbox-disabled>div{background-color:#eee!important}.layui-form [lay-checkbox]{display:none}.layui-form-checkbox[lay-skin=primary]{height:auto!important;line-height:normal!important;min-width:18px;min-height:18px;border:none!important;margin-right:0;padding-left:24px;padding-right:0;background:0 0}.layui-form-checkbox[lay-skin=primary]>div{margin-top:-1px;padding-left:0;padding-right:15px;line-height:18px;background:0 0;color:#5f5f5f}.layui-form-checkbox[lay-skin=primary]>i{right:auto;left:0;width:16px;height:16px;line-height:16px;border:1px solid #d2d2d2;font-size:12px;border-radius:2px;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-checkbox[lay-skin=primary]:hover>i{border-color:#16b777;color:#fff}.layui-form-checked[lay-skin=primary]>i{border-color:#16b777!important;background-color:#16b777;color:#fff}.layui-checkbox-disabled[lay-skin=primary]>div{background:0 0!important}.layui-form-checked.layui-checkbox-disabled[lay-skin=primary]>i{background:#eee!important;border-color:#eee!important}.layui-checkbox-disabled[lay-skin=primary]:hover>i{border-color:#d2d2d2}.layui-form-item .layui-form-checkbox[lay-skin=primary]{margin-top:10px}.layui-form-checkbox[lay-skin=primary]>.layui-icon-indeterminate{border-color:#16b777}.layui-form-checkbox[lay-skin=primary]>.layui-icon-indeterminate:before{content:'';display:inline-block;vertical-align:middle;position:relative;width:50%;height:1px;margin:-1px auto 0;background-color:#16b777}.layui-form-switch{position:relative;display:inline-block;vertical-align:middle;height:22px;line-height:22px;min-width:35px;padding:0 5px;margin-top:8px;border:1px solid #d2d2d2;border-radius:20px;cursor:pointer;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch>i{position:absolute;left:5px;top:3px;width:16px;height:16px;border-radius:20px;background-color:#d2d2d2;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch>div{position:relative;top:0;margin-left:21px;padding:0!important;text-align:center!important;color:#999!important;font-style:normal!important;font-size:12px}.layui-form-onswitch{border-color:#16b777;background-color:#16b777}.layui-form-onswitch>i{left:100%;margin-left:-21px;background-color:#fff}.layui-form-onswitch>div{margin-left:0;margin-right:21px;color:#fff!important}.layui-checkbox-disabled{border-color:#eee!important}.layui-checkbox-disabled>div{color:#c2c2c2!important}.layui-checkbox-disabled>i{border-color:#eee!important}.layui-checkbox-disabled:hover>i{color:#fff!important}.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;font-size:14px}.layui-form-radio>i{margin-right:8px;font-size:22px;color:#c2c2c2}.layui-form-radio:hover>*,.layui-form-radioed,.layui-form-radioed>i{color:#16b777}.layui-radio-disabled>i{color:#eee!important}.layui-radio-disabled>*{color:#c2c2c2!important}.layui-form [lay-radio]{display:none}.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:#fafafa;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box}.layui-form-pane .layui-input-inline{margin-left:-1px}.layui-form-pane .layui-input-block{margin-left:110px;left:-1px}.layui-form-pane .layui-input{border-radius:0 2px 2px 0}.layui-form-pane .layui-form-text .layui-form-label{float:none;width:100%;border-radius:2px;box-sizing:border-box;text-align:left}.layui-form-pane .layui-form-text .layui-input-inline{display:block;margin:0;top:-1px;clear:both}.layui-form-pane .layui-form-text .layui-input-block{margin:0;left:0;top:-1px}.layui-form-pane .layui-form-text .layui-textarea{min-height:100px;border-radius:0 0 2px 2px}.layui-form-pane .layui-form-checkbox{margin:4px 0 4px 10px}.layui-form-pane .layui-form-radio,.layui-form-pane .layui-form-switch{margin-top:6px;margin-left:10px}.layui-form-pane .layui-form-item[pane]{position:relative;border-width:1px;border-style:solid}.layui-form-pane .layui-form-item[pane] .layui-form-label{position:absolute;left:0;top:0;height:100%;border-width:0;border-right-width:1px}.layui-form-pane .layui-form-item[pane] .layui-input-inline{margin-left:110px}@media screen and (max-width:450px){.layui-form-item .layui-form-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-form-item .layui-inline{display:block;margin-right:0;margin-bottom:20px;clear:both}.layui-form-item .layui-inline:after{content:'\20';clear:both;display:block;height:0}.layui-form-item .layui-input-inline{display:block;float:none;left:-3px;width:auto!important;margin:0 0 10px 112px}.layui-form-item .layui-input-inline+.layui-form-mid{margin-left:110px;top:-5px;padding:0}.layui-form-item .layui-form-checkbox{margin-right:5px;margin-bottom:5px}}.layui-laypage{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;margin:10px 0;font-size:0}.layui-laypage>a:first-child,.layui-laypage>a:first-child em{border-radius:2px 0 0 2px}.layui-laypage>a:last-child,.layui-laypage>a:last-child em{border-radius:0 2px 2px 0}.layui-laypage>:first-child{margin-left:0!important}.layui-laypage>:last-child{margin-right:0!important}.layui-laypage a,.layui-laypage button,.layui-laypage input,.layui-laypage select,.layui-laypage span{border:1px solid #eee}.layui-laypage a,.layui-laypage span{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding:0 15px;height:28px;line-height:28px;margin:0 -1px 5px 0;background-color:#fff;color:#333;font-size:12px}.layui-laypage a[data-page]{color:#333}.layui-laypage a{text-decoration:none!important;cursor:pointer}.layui-laypage a:hover{color:#16baaa}.layui-laypage em{font-style:normal}.layui-laypage .layui-laypage-spr{color:#999;font-weight:700}.layui-laypage .layui-laypage-curr{position:relative}.layui-laypage .layui-laypage-curr em{position:relative;color:#fff}.layui-laypage .layui-laypage-curr .layui-laypage-em{position:absolute;left:-1px;top:-1px;padding:1px;width:100%;height:100%;background-color:#16baaa}.layui-laypage-em{border-radius:2px}.layui-laypage-next em,.layui-laypage-prev em{font-family:Sim sun;font-size:16px}.layui-laypage .layui-laypage-count,.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh,.layui-laypage .layui-laypage-skip{margin-left:10px;margin-right:10px;padding:0;border:none}.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh{vertical-align:top}.layui-laypage .layui-laypage-refresh i{font-size:18px;cursor:pointer}.layui-laypage select{height:22px;padding:3px;border-radius:2px;cursor:pointer}.layui-laypage .layui-laypage-skip{height:30px;line-height:30px;color:#999}.layui-laypage button,.layui-laypage input{height:30px;line-height:30px;border-radius:2px;vertical-align:top;background-color:#fff;box-sizing:border-box}.layui-laypage input{display:inline-block;width:40px;margin:0 10px;padding:0 3px;text-align:center}.layui-laypage input:focus,.layui-laypage select:focus{border-color:#16baaa!important}.layui-laypage button{margin-left:10px;padding:0 10px;cursor:pointer}.layui-flow-more{margin:10px 0;text-align:center;color:#999;font-size:14px;clear:both}.layui-flow-more a{height:32px;line-height:32px}.layui-flow-more a *{display:inline-block;vertical-align:top}.layui-flow-more a cite{padding:0 20px;border-radius:3px;background-color:#eee;color:#333;font-style:normal}.layui-flow-more a cite:hover{opacity:.8}.layui-flow-more a i{font-size:30px;color:#737383}.layui-table{width:100%;margin:10px 0;background-color:#fff;color:#5f5f5f}.layui-table tr{transition:all .3s;-webkit-transition:all .3s}.layui-table th{text-align:left;font-weight:600}.layui-table-mend{background-color:#fff}.layui-table-click,.layui-table-hover,.layui-table[lay-even] tbody tr:nth-child(even){background-color:#f8f8f8}.layui-table td,.layui-table th,.layui-table-col-set,.layui-table-fixed-r,.layui-table-grid-down,.layui-table-header,.layui-table-mend,.layui-table-page,.layui-table-tips-main,.layui-table-tool,.layui-table-total,.layui-table-view,.layui-table[lay-skin=line],.layui-table[lay-skin=row]{border-width:1px;border-style:solid;border-color:#eee}.layui-table td,.layui-table th{position:relative;padding:9px 15px;min-height:20px;line-height:20px;font-size:14px}.layui-table[lay-skin=line] td,.layui-table[lay-skin=line] th{border-width:0;border-bottom-width:1px}.layui-table[lay-skin=row] td,.layui-table[lay-skin=row] th{border-width:0;border-right-width:1px}.layui-table[lay-skin=nob] td,.layui-table[lay-skin=nob] th{border:none}.layui-table img{max-width:100px}.layui-table[lay-size=lg] td,.layui-table[lay-size=lg] th{padding-top:15px;padding-right:30px;padding-bottom:15px;padding-left:30px}.layui-table-view .layui-table[lay-size=lg] .layui-table-cell{height:50px;line-height:40px}.layui-table[lay-size=sm] td,.layui-table[lay-size=sm] th{padding-top:5px;padding-right:10px;padding-bottom:5px;padding-left:10px;font-size:12px}.layui-table-view .layui-table[lay-size=sm] .layui-table-cell{height:30px;line-height:20px;padding-top:5px;padding-left:11px;padding-right:11px}.layui-table[lay-data],.layui-table[lay-options]{display:none}.layui-table-box{position:relative;overflow:hidden}.layui-table-view{clear:both}.layui-table-view .layui-table{position:relative;width:auto;margin:0;border:0;border-collapse:separate}.layui-table-view .layui-table[lay-skin=line]{border-width:0;border-right-width:1px}.layui-table-view .layui-table[lay-skin=row]{border-width:0;border-bottom-width:1px}.layui-table-view .layui-table td,.layui-table-view .layui-table th{padding:0;border-top:none;border-left:none}.layui-table-view .layui-table th.layui-unselect .layui-table-cell span{cursor:pointer}.layui-table-view .layui-table td{cursor:default}.layui-table-view .layui-table td[data-edit]{cursor:text}.layui-table-view .layui-table td[data-edit]:hover:after{position:absolute;left:0;top:0;width:100%;height:100%;box-sizing:border-box;border:1px solid #16b777;pointer-events:none;content:""}.layui-table-view .layui-form-checkbox[lay-skin=primary] i{width:18px;height:18px}.layui-table-view .layui-form-radio{line-height:0;padding:0}.layui-table-view .layui-form-radio>i{margin:0;font-size:20px}.layui-table-init{position:absolute;left:0;top:0;width:100%;height:100%;text-align:center;z-index:199}.layui-table-init .layui-icon{position:absolute;left:50%;top:50%;margin:-15px 0 0 -15px;font-size:30px;color:#c2c2c2}.layui-table-header{border-width:0;border-bottom-width:1px;overflow:hidden}.layui-table-header .layui-table{margin-bottom:-1px}.layui-table-column{position:relative;width:100%;min-height:41px;padding:8px 16px;border-width:0;border-bottom-width:1px}.layui-table-column .layui-btn-container{margin-bottom:-8px}.layui-table-column .layui-btn-container .layui-btn{margin-right:8px;margin-bottom:8px}.layui-table-tool .layui-inline[lay-event]{position:relative;width:26px;height:26px;padding:5px;line-height:16px;margin-right:10px;text-align:center;color:#333;border:1px solid #ccc;cursor:pointer;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool .layui-inline[lay-event]:hover{border:1px solid #999}.layui-table-tool-temp{padding-right:120px}.layui-table-tool-self{position:absolute;right:17px;top:10px}.layui-table-tool .layui-table-tool-self .layui-inline[lay-event]{margin:0 0 0 10px}.layui-table-tool-panel{position:absolute;top:29px;left:-1px;z-index:399;padding:5px 0!important;min-width:150px;min-height:40px;border:1px solid #d2d2d2;text-align:left;overflow-y:auto;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-table-tool-panel li{padding:0 10px;margin:0!important;line-height:30px;list-style-type:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{width:100%}.layui-table-tool-panel li:hover{background-color:#f8f8f8}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{padding-left:28px}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] i{position:absolute;left:0;top:0}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] span{padding:0}.layui-table-tool .layui-table-tool-self .layui-table-tool-panel{left:auto;right:-1px}.layui-table-col-set{position:absolute;right:0;top:0;width:20px;height:100%;border-width:0;border-left-width:1px;background-color:#fff}.layui-table-sort{width:10px;height:20px;margin-left:5px;cursor:pointer!important}.layui-table-sort .layui-edge{position:absolute;left:5px;border-width:5px}.layui-table-sort .layui-table-sort-asc{top:3px;border-top:none;border-bottom-style:solid;border-bottom-color:#b2b2b2}.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color:#5f5f5f}.layui-table-sort .layui-table-sort-desc{bottom:5px;border-bottom:none;border-top-style:solid;border-top-color:#b2b2b2}.layui-table-sort .layui-table-sort-desc:hover{border-top-color:#5f5f5f}.layui-table-sort[lay-sort=asc] .layui-table-sort-asc{border-bottom-color:#000}.layui-table-sort[lay-sort=desc] .layui-table-sort-desc{border-top-color:#000}.layui-table-cell{height:38px;line-height:28px;padding:6px 15px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.layui-table-cell .layui-form-checkbox[lay-skin=primary]{top:-1px;padding:0}.layui-table-cell .layui-table-link{color:#01aaed}.layui-table-cell .layui-btn{vertical-align:inherit}.layui-table-cell[align=center]{-webkit-box-pack:center}.layui-table-cell[align=right]{-webkit-box-pack:end}.laytable-cell-checkbox,.laytable-cell-numbers,.laytable-cell-radio,.laytable-cell-space{text-align:center;-webkit-box-pack:center}.layui-table-body{position:relative;overflow:auto;margin-right:-1px;margin-bottom:-1px}.layui-table-body .layui-none{line-height:26px;padding:30px 15px;text-align:center;color:#999}.layui-table-fixed{position:absolute;left:0;top:0;z-index:101}.layui-table-fixed .layui-table-body{overflow:hidden}.layui-table-fixed-l{box-shadow:1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r{left:auto;right:-1px;border-width:0;border-left-width:1px;box-shadow:-1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r .layui-table-header{position:relative;overflow:visible}.layui-table-mend{position:absolute;right:-49px;top:0;height:100%;width:50px;border-width:0;border-left-width:1px}.layui-table-tool{position:relative;width:100%;min-height:50px;line-height:30px;padding:10px 15px;border-width:0;border-bottom-width:1px}.layui-table-tool .layui-btn-container{margin-bottom:-10px}.layui-table-total{margin-bottom:-1px;border-width:0;border-top-width:1px;overflow:hidden}.layui-table-page{border-width:0;border-top-width:1px;margin-bottom:-1px;white-space:nowrap;overflow:hidden}.layui-table-page>div{height:26px}.layui-table-page .layui-laypage{margin:0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span{height:26px;line-height:26px;margin-bottom:10px;border:none;background:0 0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span.layui-laypage-curr{padding:0 12px}.layui-table-page .layui-laypage span{margin-left:0;padding:0}.layui-table-page .layui-laypage .layui-laypage-prev{margin-left:-11px!important}.layui-table-page .layui-laypage .layui-laypage-curr .layui-laypage-em{left:0;top:0;padding:0}.layui-table-page .layui-laypage button,.layui-table-page .layui-laypage input{height:26px;line-height:26px}.layui-table-page .layui-laypage input{width:40px}.layui-table-page .layui-laypage button{padding:0 10px}.layui-table-page select{height:18px}.layui-table-pagebar{float:right;line-height:23px}.layui-table-pagebar .layui-btn-sm{margin-top:-1px}.layui-table-pagebar .layui-btn-xs{margin-top:2px}.layui-table-view select[lay-ignore]{display:inline-block}.layui-table-patch .layui-table-cell{padding:0;width:30px}.layui-table-edit{position:absolute;left:0;top:0;z-index:189;min-width:100%;min-height:100%;padding:5px 14px;border-radius:0;box-shadow:1px 1px 20px rgba(0,0,0,.15);background-color:#fff}.layui-table-edit:focus{border-color:#16b777!important}input.layui-input.layui-table-edit{height:100%}select.layui-table-edit{padding:0 0 0 10px;border-color:#d2d2d2}.layui-table-view .layui-form-checkbox,.layui-table-view .layui-form-radio,.layui-table-view .layui-form-switch{top:0;margin:0;box-sizing:content-box}.layui-table-view .layui-form-checkbox{top:-1px;height:26px;line-height:26px}.layui-table-view .layui-form-checkbox i{height:26px}.layui-table-grid .layui-table-cell{overflow:visible}.layui-table-grid-down{position:absolute;top:0;right:0;width:26px;height:100%;padding:5px 0;border-width:0;border-left-width:1px;text-align:center;background-color:#fff;color:#999;cursor:pointer}.layui-table-grid-down .layui-icon{position:absolute;top:50%;left:50%;margin:-8px 0 0 -8px}.layui-table-grid-down:hover{background-color:#fbfbfb}body .layui-table-tips .layui-layer-content{background:0 0;padding:0;box-shadow:0 1px 6px rgba(0,0,0,.12)}.layui-table-tips-main{margin:-49px 0 0 -1px;max-height:150px;padding:8px 15px;font-size:14px;overflow-y:scroll;background-color:#fff;color:#5f5f5f}.layui-table-tips-c{position:absolute;right:-3px;top:-13px;width:20px;height:20px;padding:3px;cursor:pointer;background-color:#5f5f5f;border-radius:50%;color:#fff}.layui-table-tips-c:hover{background-color:#777}.layui-table-tips-c:before{position:relative;right:-2px}.layui-table-tree-nodeIcon{max-width:20px}.layui-table-tree-nodeIcon>*{width:100%}.layui-table-tree-flexIcon,.layui-table-tree-nodeIcon{margin-right:2px}.layui-table-tree-flexIcon{cursor:pointer}.layui-upload-file{display:none!important;opacity:.01;filter:Alpha(opacity=1)}.layui-upload-list{margin:11px 0}.layui-upload-choose{max-width:200px;padding:0 10px;color:#999;font-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-upload-drag{position:relative;display:inline-block;padding:30px;border:1px dashed #e2e2e2;background-color:#fff;text-align:center;cursor:pointer;color:#999}.layui-upload-drag .layui-icon{font-size:50px;color:#16baaa}.layui-upload-drag[lay-over]{border-color:#16baaa}.layui-upload-form{display:inline-block}.layui-upload-iframe{position:absolute;width:0;height:0;border:0;visibility:hidden}.layui-upload-wrap{position:relative;display:inline-block;vertical-align:middle}.layui-upload-wrap .layui-upload-file{display:block!important;position:absolute;left:0;top:0;z-index:10;font-size:100px;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-btn-container .layui-upload-choose{padding-left:0}.layui-menu{position:relative;margin:5px 0;background-color:#fff;box-sizing:border-box}.layui-menu *{box-sizing:border-box}.layui-menu li,.layui-menu-body-title,.layui-menu-body-title a{padding:5px 15px;color:initial}.layui-menu li{position:relative;margin:1px 0;line-height:26px;color:rgba(0,0,0,.8);font-size:14px;white-space:nowrap;cursor:pointer;transition:all .3s}.layui-menu li:hover{background-color:#f8f8f8}.layui-menu li.layui-disabled,.layui-menu li.layui-disabled *{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important}.layui-menu-item-parent:hover>.layui-menu-body-panel{display:block;animation-name:layui-fadein;animation-duration:.3s;animation-fill-mode:both;animation-delay:.2s}.layui-menu-item-group>.layui-menu-body-title,.layui-menu-item-parent>.layui-menu-body-title{padding-right:38px}.layui-menu .layui-menu-item-divider:hover,.layui-menu .layui-menu-item-group:hover,.layui-menu .layui-menu-item-none:hover{background:0 0;cursor:default}.layui-menu .layui-menu-item-group>ul{margin:5px 0 -5px}.layui-menu .layui-menu-item-group>.layui-menu-body-title{color:rgba(0,0,0,.35);user-select:none}.layui-menu .layui-menu-item-none{color:rgba(0,0,0,.35);cursor:default}.layui-menu .layui-menu-item-none{text-align:center}.layui-menu .layui-menu-item-divider{margin:5px 0;padding:0;height:0;line-height:0;border-bottom:1px solid #eee;overflow:hidden}.layui-menu .layui-menu-item-down:hover,.layui-menu .layui-menu-item-up:hover{cursor:pointer}.layui-menu .layui-menu-item-up>.layui-menu-body-title{color:rgba(0,0,0,.8)}.layui-menu .layui-menu-item-up>ul{visibility:hidden;height:0;overflow:hidden}.layui-menu .layui-menu-item-down:hover>.layui-menu-body-title>.layui-icon,.layui-menu .layui-menu-item-up>.layui-menu-body-title:hover>.layui-icon{color:#000}.layui-menu .layui-menu-item-down>ul{visibility:visible;height:auto}.layui-menu .layui-menu-item-checked,.layui-menu .layui-menu-item-checked2{background-color:#f8f8f8!important;color:#16b777}.layui-menu .layui-menu-item-checked a,.layui-menu .layui-menu-item-checked2 a{color:#16b777}.layui-menu .layui-menu-item-checked:after{position:absolute;right:-1px;top:0;bottom:0;border-right:3px solid #16b777;content:""}.layui-menu-body-title{position:relative;margin:-5px -15px;overflow:hidden;text-overflow:ellipsis}.layui-menu-body-title a{display:block;margin:-5px -15px;color:rgba(0,0,0,.8)}.layui-menu-body-title a:hover{transition:all .3s}.layui-menu-body-title>.layui-icon{position:absolute;right:15px;top:50%;margin-top:-6px;line-height:normal;font-size:14px}.layui-menu-body-title>.layui-icon:hover{transition:all .3s}.layui-menu-body-title>.layui-icon-right{right:14px}.layui-menu-body-panel{display:none;position:absolute;top:-7px;left:100%;z-index:1000;margin-left:13px;padding:5px 0}.layui-menu-body-panel:before{content:"";position:absolute;width:20px;left:-16px;top:0;bottom:0}.layui-menu-body-panel-left{left:auto;right:100%;margin:0 13px 0}.layui-menu-body-panel-left:before{left:auto;right:-16px}.layui-menu-lg li{line-height:32px}.layui-menu-lg .layui-menu-body-title a:hover,.layui-menu-lg li:hover{background:0 0;color:#16b777}.layui-menu-lg li .layui-menu-body-panel{margin-left:14px}.layui-menu-lg li .layui-menu-body-panel-left{margin:0 15px 0}.layui-dropdown{position:absolute;left:-999999px;top:-999999px;z-index:77777777;margin:5px 0;min-width:100px}.layui-dropdown:before{content:"";position:absolute;width:100%;height:6px;left:0;top:-6px}.layui-dropdown-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px");position:fixed;_position:absolute;pointer-events:auto}.layui-nav{position:relative;padding:0 15px;background-color:#2f363c;color:#fff;border-radius:2px;font-size:0;box-sizing:border-box}.layui-nav *{font-size:14px}.layui-nav .layui-nav-item{position:relative;display:inline-block;*display:inline;*zoom:1;margin-top:0;list-style:none;vertical-align:middle;line-height:60px}.layui-nav .layui-nav-item a{display:block;padding:0 20px;color:#fff;color:rgba(255,255,255,.7);transition:all .3s;-webkit-transition:all .3s}.layui-nav .layui-this:after,.layui-nav-bar{content:"";position:absolute;left:0;top:0;width:0;height:3px;background-color:#16b777;transition:all .2s;-webkit-transition:all .2s;pointer-events:none}.layui-nav-bar{z-index:1000}.layui-nav[lay-bar=disabled] .layui-nav-bar{display:none}.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{color:#fff;text-decoration:none}.layui-nav .layui-this:after{top:auto;bottom:0;width:100%}.layui-nav-img{width:30px;height:30px;margin-right:10px;border-radius:50%}.layui-nav .layui-nav-more{position:absolute;top:0;right:3px;left:auto!important;margin-top:0;font-size:12px;cursor:pointer;transition:all .2s;-webkit-transition:all .2s}.layui-nav .layui-nav-mored,.layui-nav-itemed>a .layui-nav-more{transform:rotate(180deg)}.layui-nav-child{display:none;position:absolute;left:0;top:65px;min-width:100%;line-height:36px;padding:5px 0;box-shadow:0 2px 4px rgba(0,0,0,.12);border:1px solid #eee;background-color:#fff;z-index:100;border-radius:2px;white-space:nowrap;box-sizing:border-box}.layui-nav .layui-nav-child a{color:#5f5f5f;color:rgba(0,0,0,.8)}.layui-nav .layui-nav-child a:hover{background-color:#f8f8f8;color:rgba(0,0,0,.8)}.layui-nav-child dd{margin:1px 0;position:relative}.layui-nav-child dd.layui-this{background-color:#f8f8f8;color:#000}.layui-nav-child dd.layui-this:after{display:none}.layui-nav-child-r{left:auto;right:0}.layui-nav-child-c{text-align:center}.layui-nav.layui-nav-tree{width:200px;padding:0}.layui-nav-tree .layui-nav-item{display:block;width:100%;line-height:40px}.layui-nav-tree .layui-nav-item a{position:relative;height:40px;line-height:40px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-nav-tree .layui-nav-item>a{padding-top:5px;padding-bottom:5px}.layui-nav-tree .layui-nav-more{right:15px}.layui-nav-tree .layui-nav-item>a .layui-nav-more{padding:5px 0}.layui-nav-tree .layui-nav-bar{width:5px;height:0}.layui-side .layui-nav-tree .layui-nav-bar{width:2px}.layui-nav-tree .layui-nav-child dd.layui-this,.layui-nav-tree .layui-nav-child dd.layui-this a,.layui-nav-tree .layui-this,.layui-nav-tree .layui-this>a,.layui-nav-tree .layui-this>a:hover{background-color:#16baaa;color:#fff}.layui-nav-tree .layui-this:after{display:none}.layui-nav-itemed>a,.layui-nav-tree .layui-nav-title a,.layui-nav-tree .layui-nav-title a:hover{color:#fff!important}.layui-nav-tree .layui-nav-bar{background-color:#16baaa}.layui-nav-tree .layui-nav-child{position:relative;z-index:0;top:0;border:none;box-shadow:none}.layui-nav-tree .layui-nav-child dd{margin:0}.layui-nav-tree .layui-nav-child a{color:#fff;color:rgba(255,255,255,.7)}.layui-nav-tree .layui-nav-child,.layui-nav-tree .layui-nav-child a:hover{background:0 0;color:#fff}.layui-nav-itemed>.layui-nav-child{display:block;background-color:rgba(0,0,0,.3)!important}.layui-nav-itemed>.layui-nav-child>.layui-this>.layui-nav-child{display:block}.layui-nav-side{position:fixed;top:0;bottom:0;left:0;overflow-x:hidden;z-index:999}.layui-nav-tree.layui-bg-gray a,.layui-nav.layui-bg-gray .layui-nav-item a{color:rgba(0,0,0,.8)}.layui-nav-tree.layui-bg-gray{padding:6px 0}.layui-nav-tree.layui-bg-gray .layui-nav-itemed>a{color:#000!important}.layui-nav.layui-bg-gray .layui-this a{color:#16b777}.layui-nav-tree.layui-bg-gray .layui-nav-itemed>.layui-nav-child{padding-left:11px;background:0 0!important}.layui-nav-tree.layui-bg-gray .layui-nav-item>a{padding-top:0;padding-bottom:0}.layui-nav-tree.layui-bg-gray .layui-nav-item>a .layui-nav-more{padding:0}.layui-nav-tree.layui-bg-gray .layui-nav-child dd.layui-this,.layui-nav-tree.layui-bg-gray .layui-nav-child dd.layui-this a,.layui-nav-tree.layui-bg-gray .layui-this,.layui-nav-tree.layui-bg-gray .layui-this>a{background:0 0!important;color:#16b777!important;font-weight:700}.layui-nav-tree.layui-bg-gray .layui-nav-bar{background-color:#16b777}.layui-breadcrumb{visibility:hidden;font-size:0}.layui-breadcrumb>*{font-size:14px}.layui-breadcrumb a{color:#999!important}.layui-breadcrumb a:hover{color:#16b777!important}.layui-breadcrumb a cite{color:#5f5f5f;font-style:normal}.layui-breadcrumb span[lay-separator]{margin:0 10px;color:#999}.layui-tab{margin:10px 0;text-align:left!important}.layui-tab[overflow]>.layui-tab-title{overflow:hidden}.layui-tab .layui-tab-title{position:relative;left:0;height:40px;white-space:nowrap;font-size:0;border-bottom-width:1px;border-bottom-style:solid;transition:all .2s;-webkit-transition:all .2s}.layui-tab .layui-tab-title li{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;font-size:14px;transition:all .2s;-webkit-transition:all .2s}.layui-tab .layui-tab-title li{position:relative;line-height:40px;min-width:65px;margin:0;padding:0 15px;text-align:center;cursor:pointer}.layui-tab .layui-tab-title li a{display:block;padding:0 15px;margin:0 -15px}.layui-tab-title .layui-this{color:#000}.layui-tab-title .layui-this:after{position:absolute;left:0;top:0;content:"";width:100%;height:41px;border-width:1px;border-style:solid;border-bottom-color:#fff;border-radius:2px 2px 0 0;box-sizing:border-box;pointer-events:none}.layui-tab-bar{position:absolute;right:0;top:0;z-index:10;width:30px;height:39px;line-height:39px;border-width:1px;border-style:solid;border-radius:2px;text-align:center;background-color:#fff;cursor:pointer}.layui-tab-bar .layui-icon{position:relative;display:inline-block;top:3px;transition:all .3s;-webkit-transition:all .3s}.layui-tab-item{display:none}.layui-tab-more{padding-right:30px;height:auto!important;white-space:normal!important}.layui-tab-more li.layui-this:after{border-bottom-color:#eee;border-radius:2px}.layui-tab-more .layui-tab-bar .layui-icon{top:-2px;top:3px\0;-webkit-transform:rotate(180deg);transform:rotate(180deg)}:root .layui-tab-more .layui-tab-bar .layui-icon{top:-2px\0/IE9}.layui-tab-content{padding:15px 0}.layui-tab-title li .layui-tab-close{position:relative;display:inline-block;width:18px;height:18px;line-height:20px;margin-left:8px;top:1px;text-align:center;font-size:14px;color:#c2c2c2;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li .layui-tab-close:hover{border-radius:2px;background-color:#ff5722;color:#fff}.layui-tab-brief>.layui-tab-title .layui-this{color:#16baaa}.layui-tab-brief>.layui-tab-more li.layui-this:after,.layui-tab-brief>.layui-tab-title .layui-this:after{border:none;border-radius:0;border-bottom:2px solid #16b777}.layui-tab-brief[overflow]>.layui-tab-title .layui-this:after{top:-1px}.layui-tab-card{border-width:1px;border-style:solid;border-radius:2px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.layui-tab-card>.layui-tab-title{background-color:#fafafa}.layui-tab-card>.layui-tab-title li{margin-right:-1px;margin-left:-1px}.layui-tab-card>.layui-tab-title .layui-this{background-color:#fff}.layui-tab-card>.layui-tab-title .layui-this:after{border-top:none;border-width:1px;border-bottom-color:#fff}.layui-tab-card>.layui-tab-title .layui-tab-bar{height:40px;line-height:40px;border-radius:0;border-top:none;border-right:none}.layui-tab-card>.layui-tab-more .layui-this{background:0 0;color:#16b777}.layui-tab-card>.layui-tab-more .layui-this:after{border:none}.layui-timeline{padding-left:5px}.layui-timeline-item{position:relative;padding-bottom:20px}.layui-timeline-axis{position:absolute;left:-5px;top:0;z-index:10;width:20px;height:20px;line-height:20px;background-color:#fff;color:#16b777;border-radius:50%;text-align:center;cursor:pointer}.layui-timeline-axis:hover{color:#ff5722}.layui-timeline-item:before{content:"";position:absolute;left:5px;top:0;z-index:0;width:1px;height:100%}.layui-timeline-item:first-child:before{display:block}.layui-timeline-item:last-child:before{display:none}.layui-timeline-content{padding-left:25px}.layui-timeline-title{position:relative;margin-bottom:10px;line-height:22px}.layui-badge,.layui-badge-dot,.layui-badge-rim{position:relative;display:inline-block;padding:0 6px;font-size:12px;text-align:center;background-color:#ff5722;color:#fff;border-radius:2px}.layui-badge{height:18px;line-height:18px}.layui-badge-dot{width:8px;height:8px;padding:0;border-radius:50%}.layui-badge-rim{height:18px;line-height:18px;border-width:1px;border-style:solid;background-color:#fff;color:#5f5f5f}.layui-btn .layui-badge,.layui-btn .layui-badge-dot{margin-left:5px}.layui-nav .layui-badge,.layui-nav .layui-badge-dot{position:absolute;top:50%;margin:-5px 6px 0}.layui-nav .layui-badge{margin-top:-10px}.layui-tab-title .layui-badge,.layui-tab-title .layui-badge-dot{left:5px;top:-2px}.layui-carousel{position:relative;left:0;top:0;background-color:#f8f8f8}.layui-carousel>[carousel-item]{position:relative;width:100%;height:100%;overflow:hidden}.layui-carousel>[carousel-item]:before{position:absolute;content:'\e63d';left:50%;top:50%;width:100px;line-height:20px;margin:-10px 0 0 -50px;text-align:center;color:#c2c2c2;font-family:layui-icon!important;font-size:30px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-carousel>[carousel-item]>*{display:none;position:absolute;left:0;top:0;width:100%;height:100%;background-color:#f8f8f8;transition-duration:.3s;-webkit-transition-duration:.3s}.layui-carousel-updown>*{-webkit-transition:.3s ease-in-out up;transition:.3s ease-in-out up}.layui-carousel-arrow{display:none\0;opacity:0;position:absolute;left:10px;top:50%;margin-top:-18px;width:36px;height:36px;line-height:36px;text-align:center;font-size:20px;border:none 0;border-radius:50%;background-color:rgba(0,0,0,.2);color:#fff;-webkit-transition-duration:.3s;transition-duration:.3s;cursor:pointer}.layui-carousel-arrow[lay-type=add]{left:auto!important;right:10px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow{opacity:1;left:20px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel[lay-arrow=none] .layui-carousel-arrow{display:none}.layui-carousel-arrow:hover,.layui-carousel-ind ul:hover{background-color:rgba(0,0,0,.35)}.layui-carousel:hover .layui-carousel-arrow{display:block\0;opacity:1;left:20px}.layui-carousel:hover .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel-ind{position:relative;top:-35px;width:100%;line-height:0!important;text-align:center;font-size:0}.layui-carousel[lay-indicator=outside]{margin-bottom:30px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind{top:10px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind ul{background-color:rgba(0,0,0,.5)}.layui-carousel[lay-indicator=none] .layui-carousel-ind{display:none}.layui-carousel-ind ul{display:inline-block;padding:5px;background-color:rgba(0,0,0,.2);border-radius:10px;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind ul li{display:inline-block;width:10px;height:10px;margin:0 3px;font-size:14px;background-color:#eee;background-color:rgba(255,255,255,.5);border-radius:50%;cursor:pointer;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind ul li:hover{background-color:rgba(255,255,255,.7)}.layui-carousel-ind ul li.layui-this{background-color:#fff}.layui-carousel>[carousel-item]>.layui-carousel-next,.layui-carousel>[carousel-item]>.layui-carousel-prev,.layui-carousel>[carousel-item]>.layui-this{display:block}.layui-carousel>[carousel-item]>.layui-this{left:0}.layui-carousel>[carousel-item]>.layui-carousel-prev{left:-100%}.layui-carousel>[carousel-item]>.layui-carousel-next{left:100%}.layui-carousel>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel>[carousel-item]>.layui-carousel-prev.layui-carousel-right{left:0}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-left{left:-100%}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-right{left:100%}.layui-carousel[lay-anim=updown] .layui-carousel-arrow{left:50%!important;top:20px;margin:0 0 0 -18px}.layui-carousel[lay-anim=updown] .layui-carousel-arrow[lay-type=add]{top:auto!important;bottom:20px}.layui-carousel[lay-anim=updown] .layui-carousel-ind{position:absolute;top:50%;right:20px;width:auto;height:auto}.layui-carousel[lay-anim=updown] .layui-carousel-ind ul{padding:3px 5px}.layui-carousel[lay-anim=updown] .layui-carousel-ind li{display:block;margin:6px 0}.layui-carousel[lay-anim=updown]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next{top:100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-left{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-right{top:100%}.layui-carousel[lay-anim=fade]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev{opacity:0}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{opacity:1}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-right{opacity:0}.layui-fixbar{position:fixed;right:16px;bottom:16px;z-index:999999}.layui-fixbar li{width:50px;height:50px;line-height:50px;margin-bottom:1px;text-align:center;cursor:pointer;font-size:30px;background-color:#9f9f9f;color:#fff;border-radius:2px;opacity:.95}.layui-fixbar li:hover{opacity:.85}.layui-fixbar li:active{opacity:1}.layui-fixbar .layui-fixbar-top{display:none;font-size:40px}body .layui-util-face{border:none;background:0 0}body .layui-util-face .layui-layer-content{padding:0;background-color:#fff;color:#5f5f5f;box-shadow:none}.layui-util-face .layui-layer-TipsG{display:none}.layui-util-face ul{position:relative;width:372px;padding:10px;border:1px solid #d9d9d9;background-color:#fff;box-shadow:0 0 20px rgba(0,0,0,.2)}.layui-util-face ul li{cursor:pointer;float:left;border:1px solid #e8e8e8;height:22px;width:26px;overflow:hidden;margin:-1px 0 0 -1px;padding:4px 2px;text-align:center}.layui-util-face ul li:hover{position:relative;z-index:2;border:1px solid #eb7350;background:#fff9ec}.layui-code{position:relative;margin:10px 0;padding:15px;line-height:20px;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New,Lucida Console,Consolas;font-size:12px}.layui-transfer-box,.layui-transfer-header,.layui-transfer-search{border-width:0;border-style:solid;border-color:#eee}.layui-transfer-box{position:relative;display:inline-block;vertical-align:middle;border-width:1px;width:200px;height:360px;border-radius:2px;background-color:#fff}.layui-transfer-box .layui-form-checkbox{width:100%;margin:0!important}.layui-transfer-header{height:38px;line-height:38px;padding:0 11px;border-bottom-width:1px}.layui-transfer-search{position:relative;padding:11px;border-bottom-width:1px}.layui-transfer-search .layui-input{height:32px;padding-left:30px;font-size:12px}.layui-transfer-search .layui-icon-search{position:absolute;left:20px;top:50%;line-height:normal;margin-top:-8px;color:#5f5f5f}.layui-transfer-active{margin:0 15px;display:inline-block;vertical-align:middle}.layui-transfer-active .layui-btn{display:block;margin:0;padding:0 15px;background-color:#16b777;border-color:#16b777;color:#fff}.layui-transfer-active .layui-btn-disabled{background-color:#fbfbfb;border-color:#eee;color:#d2d2d2}.layui-transfer-active .layui-btn:first-child{margin-bottom:15px}.layui-transfer-active .layui-btn .layui-icon{margin:0;font-size:14px!important}.layui-transfer-data{padding:5px 0;overflow:auto}.layui-transfer-data li{height:32px;line-height:32px;margin-top:0!important;padding:0 11px;list-style-type:none!important}.layui-transfer-data li:hover{background-color:#f8f8f8;transition:.5s all}.layui-transfer-data .layui-none{padding:15px 11px;text-align:center;color:#999}.layui-rate,.layui-rate *{display:inline-block;vertical-align:middle}.layui-rate{padding:11px 6px 11px 0;font-size:0}.layui-rate li{margin-top:0!important}.layui-rate li i.layui-icon{font-size:20px;color:#ffb800}.layui-rate li i.layui-icon{margin-right:5px;transition:all .3s;-webkit-transition:all .3s}.layui-rate li i:hover{cursor:pointer;transform:scale(1.12);-webkit-transform:scale(1.12)}.layui-rate[readonly] li i:hover{cursor:default;transform:scale(1)}.layui-colorpicker{width:38px;height:38px;border:1px solid #eee;padding:5px;border-radius:2px;line-height:24px;display:inline-block;cursor:pointer;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-colorpicker:hover{border-color:#d2d2d2}.layui-colorpicker.layui-colorpicker-lg{width:44px;height:44px;line-height:30px}.layui-colorpicker.layui-colorpicker-sm{width:30px;height:30px;line-height:20px;padding:3px}.layui-colorpicker.layui-colorpicker-xs{width:22px;height:22px;line-height:16px;padding:1px}.layui-colorpicker-trigger-bgcolor{display:block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);border-radius:2px}.layui-colorpicker-trigger-span{display:block;height:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;text-align:center}.layui-colorpicker-trigger-i{display:inline-block;color:#fff;font-size:12px}.layui-colorpicker-trigger-i.layui-icon-close{color:#999}.layui-colorpicker-main{position:absolute;left:-999999px;top:-999999px;z-index:77777777;width:280px;margin:5px 0;padding:7px;background:#fff;border:1px solid #d2d2d2;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-colorpicker-main-wrapper{height:180px;position:relative}.layui-colorpicker-basis{width:260px;height:100%;position:relative}.layui-colorpicker-basis-white{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.layui-colorpicker-basis-black{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(0deg,#000,transparent)}.layui-colorpicker-basis-cursor{width:10px;height:10px;border:1px solid #fff;border-radius:50%;position:absolute;top:-3px;right:-3px;cursor:pointer}.layui-colorpicker-side{position:absolute;top:0;right:0;width:12px;height:100%;background:linear-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.layui-colorpicker-side-slider{width:100%;height:5px;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;left:0}.layui-colorpicker-main-alpha{display:none;height:12px;margin-top:7px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-alpha-bgcolor{height:100%;position:relative}.layui-colorpicker-alpha-slider{width:5px;height:100%;box-shadow:0 0 1px #888;box-sizing:border-box;background:#fff;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;top:0}.layui-colorpicker-main-pre{padding-top:7px;font-size:0}.layui-colorpicker-pre{width:20px;height:20px;border-radius:2px;display:inline-block;margin-left:6px;margin-bottom:7px;cursor:pointer}.layui-colorpicker-pre:nth-child(11n+1){margin-left:0}.layui-colorpicker-pre-isalpha{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-pre.layui-this{box-shadow:0 0 3px 2px rgba(0,0,0,.15)}.layui-colorpicker-pre>div{height:100%;border-radius:2px}.layui-colorpicker-main-input{text-align:right;padding-top:7px}.layui-colorpicker-main-input .layui-btn-container .layui-btn{margin:0 0 0 10px}.layui-colorpicker-main-input div.layui-inline{float:left;margin-right:10px;font-size:14px}.layui-colorpicker-main-input input.layui-input{width:150px;height:30px;color:#5f5f5f}.layui-slider{height:4px;background:#eee;border-radius:3px;position:relative;cursor:pointer}.layui-slider-bar{border-radius:3px;position:absolute;height:100%}.layui-slider-step{position:absolute;top:0;width:4px;height:4px;border-radius:50%;background:#fff;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.layui-slider-wrap{width:36px;height:36px;position:absolute;top:-16px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10;text-align:center}.layui-slider-wrap-btn{width:12px;height:12px;border-radius:50%;background:#fff;display:inline-block;vertical-align:middle;cursor:pointer;transition:.3s}.layui-slider-wrap:after{content:"";height:100%;display:inline-block;vertical-align:middle}.layui-slider-wrap-btn.layui-slider-hover,.layui-slider-wrap-btn:hover{transform:scale(1.2)}.layui-slider-wrap-btn.layui-disabled:hover{transform:scale(1)!important}.layui-slider-tips{position:absolute;top:-42px;z-index:77777777;white-space:nowrap;display:none;-webkit-transform:translateX(-50%);transform:translateX(-50%);color:#fff;background:#000;border-radius:3px;height:25px;line-height:25px;padding:0 10px}.layui-slider-tips:after{content:"";position:absolute;bottom:-12px;left:50%;margin-left:-6px;width:0;height:0;border-width:6px;border-style:solid;border-color:#000 transparent transparent transparent}.layui-slider-input{width:70px;height:32px;border:1px solid #eee;border-radius:3px;font-size:16px;line-height:32px;position:absolute;right:0;top:-14px}.layui-slider-input-btn{position:absolute;top:0;right:0;width:20px;height:100%;border-left:1px solid #eee}.layui-slider-input-btn i{cursor:pointer;position:absolute;right:0;bottom:0;width:20px;height:50%;font-size:12px;line-height:16px;text-align:center;color:#999}.layui-slider-input-btn i:first-child{top:0;border-bottom:1px solid #eee}.layui-slider-input-txt{height:100%;font-size:14px}.layui-slider-input-txt input{height:100%;border:none}.layui-slider-input-btn i:hover{color:#16baaa}.layui-slider-vertical{width:4px;margin-left:33px}.layui-slider-vertical .layui-slider-bar{width:4px}.layui-slider-vertical .layui-slider-step{top:auto;left:0;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-wrap{top:auto;left:-16px;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-tips{top:auto;left:2px}@media \0screen{.layui-slider-wrap-btn{margin-left:-20px}.layui-slider-vertical .layui-slider-wrap-btn{margin-left:0;margin-bottom:-20px}.layui-slider-vertical .layui-slider-tips{margin-left:-8px}.layui-slider>span{margin-left:8px}}.layui-tree{line-height:22px}.layui-tree .layui-form-checkbox{margin:0!important}.layui-tree-set{width:100%;position:relative}.layui-tree-pack{display:none;padding-left:20px;position:relative}.layui-tree-line .layui-tree-pack{padding-left:27px}.layui-tree-line .layui-tree-set .layui-tree-set:after{content:"";position:absolute;top:14px;left:-9px;width:17px;height:0;border-top:1px dotted #c0c4cc}.layui-tree-entry{position:relative;padding:3px 0;height:20px;white-space:nowrap}.layui-tree-entry:hover{background-color:#eee}.layui-tree-line .layui-tree-entry:hover{background-color:rgba(0,0,0,0)}.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color:#999;text-decoration:underline;transition:.3s}.layui-tree-main{display:inline-block;vertical-align:middle;cursor:pointer;padding-right:10px}.layui-tree-line .layui-tree-set:before{content:"";position:absolute;top:0;left:-9px;width:0;height:100%;border-left:1px dotted #c0c4cc}.layui-tree-line .layui-tree-set.layui-tree-setLineShort:before{height:13px}.layui-tree-line .layui-tree-set.layui-tree-setHide:before{height:0}.layui-tree-iconClick{display:inline-block;vertical-align:middle;position:relative;height:20px;line-height:20px;margin:0 10px;color:#c0c4cc}.layui-tree-icon{height:12px;line-height:12px;width:12px;text-align:center;border:1px solid #c0c4cc}.layui-tree-iconClick .layui-icon{font-size:18px}.layui-tree-icon .layui-icon{font-size:12px;color:#5f5f5f}.layui-tree-iconArrow{padding:0 5px}.layui-tree-iconArrow:after{content:"";position:absolute;left:4px;top:3px;z-index:100;width:0;height:0;border-width:5px;border-style:solid;border-color:transparent transparent transparent #c0c4cc;transition:.5s}.layui-tree-spread>.layui-tree-entry .layui-tree-iconClick>.layui-tree-iconArrow:after{transform:rotate(90deg) translate(3px,4px)}.layui-tree-txt{display:inline-block;vertical-align:middle;color:#555}.layui-tree-search{margin-bottom:15px;color:#5f5f5f}.layui-tree-btnGroup{visibility:hidden;display:inline-block;vertical-align:middle;position:relative}.layui-tree-btnGroup .layui-icon{display:inline-block;vertical-align:middle;padding:0 2px;cursor:pointer}.layui-tree-btnGroup .layui-icon:hover{color:#999;transition:.3s}.layui-tree-entry:hover .layui-tree-btnGroup{visibility:visible}.layui-tree-editInput{position:relative;display:inline-block;vertical-align:middle;height:20px;line-height:20px;padding:0 3px;border:none;background-color:rgba(0,0,0,.05)}.layui-tree-emptyText{text-align:center;color:#999}.layui-anim{-webkit-animation-duration:.3s;-webkit-animation-fill-mode:both;animation-duration:.3s;animation-fill-mode:both}.layui-anim.layui-icon{display:inline-block}.layui-anim-loop{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.layui-trans,.layui-trans a{transition:all .2s;-webkit-transition:all .2s}@-webkit-keyframes layui-rotate{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes layui-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}.layui-anim-rotate{-webkit-animation-name:layui-rotate;animation-name:layui-rotate;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:linear;animation-timing-function:linear}@-webkit-keyframes layui-up{from{-webkit-transform:translate3d(0,100%,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-up{from{transform:translate3d(0,100%,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-up{-webkit-animation-name:layui-up;animation-name:layui-up}@-webkit-keyframes layui-upbit{from{-webkit-transform:translate3d(0,15px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-upbit{from{transform:translate3d(0,15px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-upbit{-webkit-animation-name:layui-upbit;animation-name:layui-upbit}@keyframes layui-down{0%{opacity:.3;transform:translate3d(0,-100%,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-down{animation-name:layui-down}@keyframes layui-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-anim-downbit{animation-name:layui-downbit}@-webkit-keyframes layui-scale{0%{opacity:.3;-webkit-transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale{0%{opacity:.3;-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-ms-transform:scale(1);transform:scale(1)}}.layui-anim-scale{-webkit-animation-name:layui-scale;animation-name:layui-scale}@-webkit-keyframes layui-scale-spring{0%{opacity:.5;-webkit-transform:scale(.5)}80%{opacity:.8;-webkit-transform:scale(1.1)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale-spring{0%{opacity:.5;transform:scale(.5)}80%{opacity:.8;transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}.layui-anim-scaleSpring{-webkit-animation-name:layui-scale-spring;animation-name:layui-scale-spring}@keyframes layui-scalesmall{0%{opacity:.3;transform:scale(1.5)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall{animation-name:layui-scalesmall}@keyframes layui-scalesmall-spring{0%{opacity:.3;transform:scale(1.5)}80%{opacity:.8;transform:scale(.9)}100%{opacity:1;transform:scale(1)}}.layui-anim-scalesmall-spring{animation-name:layui-scalesmall-spring}@-webkit-keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}@keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}.layui-anim-fadein{-webkit-animation-name:layui-fadein;animation-name:layui-fadein}@-webkit-keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}.layui-anim-fadeout{-webkit-animation-name:layui-fadeout;animation-name:layui-fadeout}html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-view{display:block;position:relative;margin:11px 0;padding:0;border:1px solid #eee;border-left-width:6px;background-color:#fafafa;color:#333;font-family:Courier New;font-size:13px}.layui-code-title{position:relative;padding:0 10px;height:40px;line-height:40px;border-bottom:1px solid #eee;font-size:12px}.layui-code-title>.layui-code-about{position:absolute;right:10px;top:0;color:#b7b7b7}.layui-code-about>a{padding-left:10px}.layui-code-view>.layui-code-ol,.layui-code-view>.layui-code-ul{max-height:100%;padding:0!important;position:relative;overflow:auto}.layui-code-view>.layui-code-ol>li{position:relative;margin-top:0!important;margin-left:45px!important;line-height:20px;padding:0 10px!important;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view>.layui-code-ol>li:first-child,.layui-code-view>.layui-code-ul>li:first-child{padding-top:10px!important}.layui-code-view>.layui-code-ol>li:last-child,.layui-code-view>.layui-code-ul>li:last-child{padding-bottom:10px!important}.layui-code-view>.layui-code-ul>li{position:relative;line-height:20px;padding:0 10px!important;list-style-type:none;*list-style-type:none;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-dark{border:1px solid #0c0c0c;border-left-color:#3f3f3f;background-color:#0c0c0c;color:#c2be9e}.layui-code-dark>.layui-code-title{border-bottom:none}.layui-code-dark>.layui-code-ol>li,.layui-code-dark>.layui-code-ul>li{background-color:#3f3f3f;border-left:none}.layui-code-dark>.layui-code-ul>li{margin-left:6px}.layui-code textarea{display:none}.layui-code-preview>.layui-code{margin:0}.layui-code-preview>.layui-tab{position:relative;z-index:1;margin-bottom:0}.layui-code-preview>.layui-tab>.layui-tab-title{border-bottom:none}.layui-code-preview>.layui-code>.layui-code-title{display:none}.layui-code-preview .layui-code-item{display:none}.layui-code-item-preview{position:relative;padding:16px}.layui-code-item-preview>iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.layui-code-tools{position:absolute;right:11px;top:3px}.layui-code-tools>i{display:inline-block;margin-left:6px;padding:3px;cursor:pointer}.layui-code-tools>i.layui-icon-file-b{color:#999}.layui-code-tools>i:hover{color:#16b777}.layui-code-copy{position:absolute;right:6px;top:6px;cursor:pointer;display:none}.layui-code-copy .layui-icon{color:#777;transition:all .3s}.layui-code-copy:hover .layui-icon{color:#16b777}.layui-code-view:hover>.layui-code-copy{display:block}.layui-code-copy-offset{margin-right:17px}.layui-code-preview>.layui-code-view>.layui-code-copy{display:none!important}.layui-code-full{position:fixed;left:0;top:0;z-index:1111111;width:100%;height:100%;background-color:#fff}.layui-code-full .layui-code-item{width:100%!important;border-width:0!important;border-top-width:1px!important}.layui-code-full .layui-code-item,.layui-code-full .layui-code-ol,.layui-code-full .layui-code-ul{height:calc(100vh - 51px)!important;box-sizing:border-box}html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate,.layui-laydate *{box-sizing:border-box}.layui-laydate{position:absolute;z-index:99999999;margin:5px 0;border-radius:2px;font-size:14px;line-height:normal;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}.layui-laydate-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px");position:fixed;_position:absolute;pointer-events:auto}@keyframes laydate-downbit{0%{opacity:.3;transform:translate3d(0,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}.layui-laydate{animation-name:laydate-downbit}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;padding:0 5px;color:#999;font-size:18px;cursor:pointer}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-set-ym span{padding:0 10px;cursor:pointer}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:0;text-align:center}.layui-laydate-content th{font-weight:400}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.laydate-day-holidays:before{position:absolute;left:0;top:0;font-size:12px;transform:scale(.7)}.laydate-day-holidays:before{content:'\4F11';color:#ff5722}.laydate-day-holidays[type=work]:before{content:'\73ED';color:inherit}.layui-laydate .layui-this .laydate-day-holidays:before{color:#fff}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px}.layui-laydate-footer span{display:inline-block;vertical-align:top;height:26px;line-height:24px;padding:0 10px;border:1px solid #c9c9c9;border-radius:2px;background-color:#fff;font-size:12px;cursor:pointer;white-space:nowrap;transition:all .3s}.layui-laydate-footer span:hover{color:#16b777}.layui-laydate-footer span.layui-laydate-preview{cursor:default;border-color:transparent!important}.layui-laydate-footer span.layui-laydate-preview:hover{color:#777}.layui-laydate-footer span:first-child.layui-laydate-preview{padding-left:0}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{margin:0 0 0 -1px;border-radius:0}.laydate-footer-btns span:first-child{border-radius:2px 0 0 2px}.laydate-footer-btns span:last-child{border-radius:0 2px 2px 0}.layui-laydate-shortcut{width:80px;padding:6px 0;display:inline-block;vertical-align:top;overflow:auto;max-height:276px;text-align:center}.layui-laydate-shortcut+.layui-laydate-main{display:inline-block;border-left:1px solid #e2e2e2}.layui-laydate-shortcut>li{padding:5px 8px;cursor:pointer;line-height:18px}.layui-laydate .layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;box-sizing:border-box;background-color:#fff}.layui-laydate .layui-laydate-list>li{position:relative;display:inline-block;width:33.3%;height:36px;line-height:36px;margin:3px 0;vertical-align:middle;text-align:center;cursor:pointer;list-style:none}.layui-laydate .laydate-month-list>li{width:25%;margin:17px 0}.layui-laydate .laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.layui-laydate .laydate-time-list p{position:relative;top:-4px;margin:0;line-height:29px}.layui-laydate .laydate-time-list ol{height:181px;overflow:hidden}.layui-laydate .laydate-time-list>li:hover ol{overflow-y:auto}.layui-laydate .laydate-time-list ol li{width:130%;padding-left:33px;height:30px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px;color:#ff5722}.layui-laydate-range{width:546px}.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle;max-width:50%}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content,.layui-laydate-range .laydate-main-list-1 .layui-laydate-header{border-left:1px solid #e2e2e2}.layui-laydate-range.layui-laydate-linkage .laydate-main-list-0 .laydate-next-m,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-0 .laydate-next-y,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-1 .laydate-prev-m,.layui-laydate-range.layui-laydate-linkage .laydate-main-list-1 .laydate-prev-y{display:none}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#777}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#16b777}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{color:#333}.layui-laydate-content td{color:#777}.layui-laydate-content td.laydate-day-now{color:#16b777}.layui-laydate-content td.laydate-day-now:after{content:'';position:absolute;width:100%;height:30px;left:0;top:0;border:1px solid #16b777;box-sizing:border-box}.layui-laydate-linkage .layui-laydate-content td.laydate-selected>div{background-color:#00f7de}.layui-laydate-linkage .laydate-selected:hover>div{background-color:#00f7de!important}.layui-laydate-content td.laydate-selected:after,.layui-laydate-content td:hover:after{content:none}.layui-laydate-content td>div:hover,.layui-laydate-list li:hover,.layui-laydate-shortcut>li:hover{background-color:#eee;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.layui-laydate-linkage .laydate-selected.laydate-day-next>div,.layui-laydate-linkage .laydate-selected.laydate-day-prev>div{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#ff5722}.laydate-day-mark::after{background-color:#16b777}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#16b777}.layui-laydate .layui-this,.layui-laydate .layui-this>div{background-color:#16baaa!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content td>div{padding:7px 0;height:100%}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#16baaa}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li,.laydate-theme-grid .layui-laydate-content td,.laydate-theme-grid .layui-laydate-content thead{border:1px solid #e2e2e2}.layui-laydate-linkage.laydate-theme-grid .laydate-selected,.layui-laydate-linkage.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#16baaa!important}.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-next,.layui-laydate-linkage.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px}.laydate-theme-grid .layui-laydate-content td>div{height:29px;margin-top:-1px}.laydate-theme-circle .layui-laydate-content td.layui-this>div,.laydate-theme-circle .layui-laydate-content td>div{width:28px;height:28px;line-height:28px;border-radius:14px;margin:0 4px;padding:0}.layui-laydate.laydate-theme-circle .layui-laydate-content table td.layui-this{background-color:transparent!important}.laydate-theme-grid.laydate-theme-circle .layui-laydate-content td>div{margin:0 3.5px}.laydate-theme-fullpanel .layui-laydate-main{width:526px}.laydate-theme-fullpanel .layui-laydate-list{width:252px;left:272px}.laydate-theme-fullpanel .laydate-set-ym span{display:none}.laydate-theme-fullpanel .laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-theme-fullpanel .laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-theme-fullpanel .laydate-time-show .layui-laydate-header .layui-icon{display:inline-block!important}.laydate-theme-fullpanel .laydate-btns-time{display:none}html #layuicss-layer{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{-webkit-overflow-scrolling:touch}.layui-layer{top:150px;left:0;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;border-radius:2px;box-shadow:1px 1px 50px rgba(0,0,0,.3)}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #b2b2b2;border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-btn a,.layui-layer-setwin span{display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-move{display:none;position:fixed;*position:absolute;left:0;top:0;width:100%;height:100%;cursor:move;opacity:0;filter:alpha(opacity=0);background-color:#fff;z-index:2147483647}.layui-layer-resize{position:absolute;width:15px;height:15px;right:0;bottom:0;cursor:se-resize}.layer-anim{-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}@-webkit-keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-00{-webkit-animation-name:layer-bounceIn;animation-name:layer-bounceIn}@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown}@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig}@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft}@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn}@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn}@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes layer-slide-down{from{transform:translate3d(0,-100%,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-down-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-100%,0)}}.layer-anim-slide-down{animation-name:layer-slide-down}.layer-anim-slide-down-out{animation-name:layer-slide-down-out}@keyframes layer-slide-left{from{transform:translate3d(100%,0,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-left-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(100%,0,0)}}.layer-anim-slide-left{animation-name:layer-slide-left}.layer-anim-slide-left-out{animation-name:layer-slide-left-out}@keyframes layer-slide-up{from{transform:translate3d(0,100%,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-up-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,100%,0)}}.layer-anim-slide-up{animation-name:layer-slide-up}.layer-anim-slide-up-out{animation-name:layer-slide-up-out}@keyframes layer-slide-right{from{transform:translate3d(-100%,0,0)}to{transform:translate3d(0,0,0)}}@keyframes layer-slide-right-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(-100%,0,0)}}.layer-anim-slide-right{animation-name:layer-slide-right}.layer-anim-slide-right-out{animation-name:layer-slide-right-out}.layui-layer-title{padding:0 81px 0 16px;height:50px;line-height:50px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:16px;font-size:0;line-height:initial}.layui-layer-setwin span{position:relative;width:16px;height:16px;line-height:18px;margin-left:10px;text-align:center;font-size:16px;cursor:pointer;color:#000;_overflow:hidden}.layui-layer-setwin .layui-layer-min:before{content:'';position:absolute;width:12px;height:1px;left:50%;top:50%;margin:-.5px 0 0 -6px;background-color:#2e2d3c;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover:before{background-color:#2d93ca}.layui-layer-setwin .layui-layer-max:after,.layui-layer-setwin .layui-layer-max:before{content:'';position:absolute;left:50%;top:50%;z-index:1;width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #2e2d3c}.layui-layer-setwin .layui-layer-max:hover:after,.layui-layer-setwin .layui-layer-max:hover:before{border-color:#2d93ca}.layui-layer-setwin .layui-layer-min:hover:before{background-color:#2d93ca}.layui-layer-setwin .layui-layer-maxmin:after,.layui-layer-setwin .layui-layer-maxmin:before{width:7px;height:7px;margin:-3px 0 0 -3px;background-color:#fff}.layui-layer-setwin .layui-layer-maxmin:after{z-index:0;margin:-5px 0 0 -1px}.layui-layer-setwin .layui-layer-close{cursor:pointer}.layui-layer-setwin .layui-layer-close:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;color:#fff;background-color:#787878;padding:3px;border:3px solid;width:18px;height:18px;font-size:18px;font-weight:bolder;border-radius:50%;margin-left:0;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{opacity:unset;background-color:#3888f6}.layui-layer-btn{text-align:right;padding:0 15px 12px;pointer-events:auto;user-select:none;-webkit-user-select:none}.layui-layer-btn a{height:28px;line-height:28px;margin:5px 5px 0;padding:0 15px;border:1px solid #dedede;background-color:#fff;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.8}.layui-layer-btn .layui-layer-btn0{border-color:#1e9fff;background-color:#1e9fff;color:#fff}.layui-layer-btn-l{text-align:left}.layui-layer-btn-c{text-align:center}.layui-layer-dialog{min-width:240px}.layui-layer-dialog .layui-layer-content{position:relative;padding:16px;line-height:24px;word-break:break-all;overflow:hidden;font-size:14px;overflow-x:hidden;overflow-y:auto}.layui-layer-dialog .layui-layer-content .layui-layer-face{position:absolute;top:18px;left:16px;color:#959595;font-size:32px;_left:-40px}.layui-layer-dialog .layui-layer-content .layui-icon-tips{color:#f39b12}.layui-layer-dialog .layui-layer-content .layui-icon-success{color:#16b777}.layui-layer-dialog .layui-layer-content .layui-icon-error{top:19px;color:#ff5722}.layui-layer-dialog .layui-layer-content .layui-icon-question{color:#ffb800}.layui-layer-dialog .layui-layer-content .layui-icon-lock{color:#787878}.layui-layer-dialog .layui-layer-content .layui-icon-face-cry{color:#ff5722}.layui-layer-dialog .layui-layer-content .layui-icon-face-smile{color:#16b777}.layui-layer-rim{border:6px solid #8d8d8d;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #d3d4d3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-close{color:#fff}.layui-layer-hui .layui-layer-content{padding:11px 24px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:18px 24px 18px 58px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:76px;height:38px;line-height:38px;text-align:center}.layui-layer-loading-icon{font-size:38px;color:#959595}.layui-layer-loading2{text-align:center}.layui-layer-loading-2{position:relative;height:38px}.layui-layer-loading-2:after,.layui-layer-loading-2:before{content:'';position:absolute;left:50%;top:50%;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:3px solid #d2d2d2;box-sizing:border-box}.layui-layer-loading-2:after{border-color:transparent;border-left-color:#1e9fff}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:8px 15px;font-size:12px;_float:left;border-radius:2px;box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color:#000;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#000}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:5px;border-bottom-style:solid;border-bottom-color:#000}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan .layui-layer-title{background:#4476a7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;text-align:right;border-top:1px solid #e9e7e7}.layui-layer-lan .layui-layer-btn a{background:#fff;border-color:#e9e7e7;color:#333}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#c9c5c5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95;border-color:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92b8b1}.layui-layer-lan .layui-layer-setwin .layui-icon,.layui-layer-molv .layui-layer-setwin .layui-icon{color:#fff}.layui-layer-win10{border:1px solid #aaa;box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:none}.layui-layer-win10 .layui-layer-title{height:32px;line-height:32px;padding-left:8px;border-bottom:none;font-size:12px}.layui-layer-win10 .layui-layer-setwin{right:0;top:0}.layui-layer-win10 .layui-layer-setwin span{margin-left:0;padding:8px}.layui-layer-win10.layui-layer-page .layui-layer-setwin span{padding:8px 11px}.layui-layer-win10 .layui-layer-setwin span:hover{background-color:#e5e5e5}.layui-layer-win10 .layui-layer-setwin span.layui-icon-close:hover{background-color:#e81123;color:#fff}.layui-layer-win10.layui-layer-dialog .layui-layer-content{padding:8px 16px 32px;color:#0033bc}.layui-layer-win10.layui-layer-dialog .layui-layer-padding{padding-top:18px;padding-left:58px}.layui-layer-win10 .layui-layer-btn{padding:5px 5px 10px;border-top:1px solid #dfdfdf;background-color:#f0f0f0}.layui-layer-win10 .layui-layer-btn a{height:18px;line-height:18px;background-color:#e1e1e1;border-color:#adadad;color:#000;font-size:12px;transition:all .3s}.layui-layer-win10 .layui-layer-btn a:hover{border-color:#2a8edd;background-color:#e5f1fb}.layui-layer-win10 .layui-layer-btn .layui-layer-btn0{border-color:#0078d7}.layui-layer-prompt .layui-layer-input{display:block;width:260px;height:36px;margin:0 auto;line-height:30px;padding-left:10px;border:1px solid #e6e6e6;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px;padding:6px 10px}.layui-layer-prompt .layui-layer-content{padding:16px}.layui-layer-prompt .layui-layer-btn{padding-top:0}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;display:inline-block;vertical-align:top;border-left:1px solid transparent;border-right:1px solid transparent;min-width:80px;max-width:300px;padding:0 16px;text-align:center;cursor:default;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;cursor:pointer}.layui-layer-tab .layui-layer-title span.layui-this{height:51px;border-left-color:#eee;border-right-color:#eee;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left-color:transparent}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.layui-this{display:block}.layui-layer-photos{background:0 0;box-shadow:none}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgnext,.layui-layer-imgprev{position:fixed;top:50%;width:52px;height:52px;line-height:52px;margin-top:-26px;cursor:pointer;font-size:52px;color:#717171}.layui-layer-imgprev{left:32px}.layui-layer-imgnext{right:32px}.layui-layer-imgnext:hover,.layui-layer-imgprev:hover{color:#959595}.layui-layer-imgbar{position:fixed;left:0;right:0;bottom:0;width:100%;height:40px;line-height:40px;background-color:#000\9;filter:Alpha(opacity=60);background-color:rgba(2,0,0,.35);color:#fff;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;padding:0 5px;font-size:12px;color:#fff}.layui-layer-imgtit h3{max-width:65%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:300}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{font-style:normal}@-webkit-keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-close{-webkit-animation-name:layer-bounceOut;animation-name:layer-bounceOut;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}@media screen and (max-width:1100px){.layui-layer-iframe{overflow-y:auto;-webkit-overflow-scrolling:touch}} \ No newline at end of file diff --git a/static/Layui/v2.8.3/font/iconfont.eot b/static/Layui/v2.8.3/font/iconfont.eot new file mode 100644 index 0000000..3f5e98b Binary files /dev/null and b/static/Layui/v2.8.3/font/iconfont.eot differ diff --git a/static/Layui/v2.8.3/font/iconfont.svg b/static/Layui/v2.8.3/font/iconfont.svg new file mode 100644 index 0000000..4f1920d --- /dev/null +++ b/static/Layui/v2.8.3/font/iconfont.svg @@ -0,0 +1,405 @@ + + + + Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/Layui/v2.8.3/font/iconfont.ttf b/static/Layui/v2.8.3/font/iconfont.ttf new file mode 100644 index 0000000..6e84a89 Binary files /dev/null and b/static/Layui/v2.8.3/font/iconfont.ttf differ diff --git a/static/Layui/v2.8.3/font/iconfont.woff b/static/Layui/v2.8.3/font/iconfont.woff new file mode 100644 index 0000000..acd7ed6 Binary files /dev/null and b/static/Layui/v2.8.3/font/iconfont.woff differ diff --git a/static/Layui/v2.8.3/font/iconfont.woff2 b/static/Layui/v2.8.3/font/iconfont.woff2 new file mode 100644 index 0000000..5badd6e Binary files /dev/null and b/static/Layui/v2.8.3/font/iconfont.woff2 differ diff --git a/static/Layui/v2.8.3/layui.js b/static/Layui/v2.8.3/layui.js new file mode 100644 index 0000000..dc3b247 --- /dev/null +++ b/static/Layui/v2.8.3/layui.js @@ -0,0 +1 @@ +/** v2.8.3 | MIT Licensed */;!function(d){"use strict";var t,h=d.document,m={modules:{},status:{},timeout:10,event:{}},o=function(){this.v="2.8.3"},e=d.LAYUI_GLOBAL||{},v=(t=h.currentScript?h.currentScript.src:function(){for(var t,e=h.scripts,n=e.length-1,o=n;01e3*m.timeout/4?g(u+" is not a valid module","error"):void(m.status[u]?c():setTimeout(o,4))}())}function c(){e.push(layui[u]),11e3*m.timeout/4?g(u+" is not a valid module","error"):void("string"==typeof m.modules[u]&&m.status[u]?c():setTimeout(f,4))}():((p=h.createElement("script"))["async"]=!0,p.charset="utf-8",p.src=y+((i=!0===m.version?m.v||(new Date).getTime():m.version||"")?"?v="+i:""),a.appendChild(p),!p.attachEvent||p.attachEvent.toString&&p.attachEvent.toString().indexOf("[native code")<0||b?p.addEventListener("load",function(t){s(t,y)},!1):p.attachEvent("onreadystatechange",function(t){s(t,y)}),m.modules[u]=y),r},o.prototype.disuse=function(t){var n=this;return t=n.isArray(t)?t:[t],n.each(t,function(t,e){m.status[e],delete n[e],delete N[e],delete n.modules[e],delete m.status[e],delete m.modules[e]}),n},o.prototype.getStyle=function(t,e){t=t.currentStyle||d.getComputedStyle(t,null);return t[t.getPropertyValue?"getPropertyValue":"getAttribute"](e)},o.prototype.link=function(n,o,t){var r=this,e=h.getElementsByTagName("head")[0],i=h.createElement("link"),t=((t="string"==typeof o?o:t)||n).replace(/\.|\//g,""),a=i.id="layuicss-"+t,u="creating",l=0;return i.rel="stylesheet",i.href=n+(m.debug?"?v="+(new Date).getTime():""),i.media="all",h.getElementById(a)||e.appendChild(i),"function"!=typeof o||function s(t){var e=h.getElementById(a);return++l>1e3*m.timeout/100?g(n+" timeout"):void(1989===parseInt(r.getStyle(e,"width"))?(t===u&&e.removeAttribute("lay-status"),e.getAttribute("lay-status")===u?setTimeout(s,100):o()):(e.setAttribute("lay-status",u),setTimeout(function(){s(u)},100)))}(),r},o.prototype.addcss=function(t,e,n){return layui.link(m.dir+"css/"+t,e,n)},m.callback={},o.prototype.factory=function(t){if(layui[t])return"function"==typeof m.callback[t]?m.callback[t]:null},o.prototype.img=function(t,e,n){var o=new Image;if(o.src=t,o.complete)return e(o);o.onload=function(){o.onload=null,"function"==typeof e&&e(o)},o.onerror=function(t){o.onerror=null,"function"==typeof n&&n(t)}},o.prototype.config=function(t){for(var e in t=t||{})m[e]=t[e];return this},o.prototype.modules=function(){var t,e={};for(t in N)e[t]=N[t];return e}(),o.prototype.extend=function(t){for(var e in t=t||{})this[e]||this.modules[e]?g(e+" Module already exists","error"):this.modules[e]=t[e];return this},o.prototype.router=o.prototype.hash=function(t){var n={path:[],search:{},hash:((t=t||location.hash).match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(t)&&(t=t.replace(/^#\//,""),n.href="/"+t,t=t.replace(/([^#])(#.*$)/,"$1").split("/")||[],this.each(t,function(t,e){/^\w+=/.test(e)?(e=e.split("="),n.search[e[0]]=e[1]):n.path.push(e)})),n},o.prototype.url=function(t){var r,e,n=this;return{pathname:(t?((t.match(/\.[^.]+?\/.+/)||[])[0]||"").replace(/^[^\/]+/,"").replace(/\?.+/,""):location.pathname).replace(/^\//,"").split("/"),search:(r={},e=(t?((t.match(/\?.+/)||[])[0]||"").replace(/\#.+/,""):location.search).replace(/^\?+/,"").split("&"),n.each(e,function(t,e){var n=e.indexOf("="),o=n<0?e.substr(0,e.length):0!==n&&e.substr(0,n);o&&(r[o]=0(s.innerHeight||l.documentElement.clientHeight)},h.position=function(t,e,n){var i,r,o,c,u,a,f;e&&(n=n||{},t!==l&&t!==h("body")[0]||(n.clickType="right"),u="right"===n.clickType?{left:(u=n.e||s.event||{}).clientX,top:u.clientY,right:u.clientX,bottom:u.clientY}:t.getBoundingClientRect(),a=e.offsetWidth,f=e.offsetHeight,i=function(t){return l.body[t=t?"scrollLeft":"scrollTop"]|l.documentElement[t]},o=u.left,c=u.bottom,"center"===n.align?o-=(a-t.offsetWidth)/2:"right"===n.align&&(o=o-a+t.offsetWidth),(o=o+a+5>(r=function(t){return l.documentElement[t?"clientWidth":"clientHeight"]})("width")?r("width")-a-5:o)<5&&(o=5),c+f+5>r()&&(u.top>f+5?c=u.top-f-10:"right"===n.clickType?(c=r()-f-10)<0&&(c=0):c=5),(a=n.position)&&(e.style.position=a),e.style.left=o+("fixed"===a?0:i(1))+"px",e.style.top=c+("fixed"===a?0:i())+"px",h.hasScrollbar()||(f=e.getBoundingClientRect(),!n.SYSTEM_RELOAD&&f.bottom+5>r()&&(n.SYSTEM_RELOAD=!0,setTimeout(function(){h.position(t,e,n)},50))))},h.options=function(t,e){if(e="object"==typeof e?e:{attr:e},t===l)return{};var t=h(t),n=e.attr||"lay-options",t=t.attr(n);try{return new Function("return "+(t||"{}"))()}catch(i){return layui.hint().error(e.errorText||[n+'="'+t+'"',"\n parseerror: "+i].join("\n"),"error"),{}}},h.isTopElem=function(n){var t=[l,h("body")[0]],i=!1;return h.each(t,function(t,e){if(e===n)return i=!0}),i},r.addStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){new RegExp("\\b"+e+"\\b").test(n)||(n=n+" "+e)}),n.replace(/^\s|\s$/,"")},r.removeStr=function(n,t){return n=n.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),h.each(t,function(t,e){e=new RegExp("\\b"+e+"\\b");e.test(n)&&(n=n.replace(e,""))}),n.replace(/\s+/," ").replace(/^\s|\s$/,"")},r.fn.find=function(n){var i=[],r="object"==typeof n;return this.each(function(t,e){e=r&&e.contains(n)?n:e.querySelectorAll(n||null);h.each(e,function(t,e){i.push(e)})}),h(i)},r.fn.each=function(t){return h.each.call(this,this,t)},r.fn.addClass=function(n,i){return this.each(function(t,e){e.className=r[i?"removeStr":"addStr"](e.className,n)})},r.fn.removeClass=function(t){return this.addClass(t,!0)},r.fn.hasClass=function(n){var i=!1;return this.each(function(t,e){new RegExp("\\b"+n+"\\b").test(e.className)&&(i=!0)}),i},r.fn.css=function(e,i){var t=this,r=function(t){return isNaN(t)?t:t+"px"};return"string"!=typeof e||i!==undefined?t.each(function(t,n){"object"==typeof e?h.each(e,function(t,e){n.style[t]=r(e)}):n.style[e]=r(i)}):0]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e}},i=function(e){return new RegExp(e,"g")},u=function(e,r){var n="Laytpl Error: ";return"object"==typeof console&&console.error(n+e+"\n"+(r||"")),n+e},n=function(e,r){var n=this,e=(n.config=n.config||{},n.template=e,function(e){for(var r in e)n.config[r]=e[r]});e(c),e(r)},r=(n.prototype.tagExp=function(e,r,n){var c=this.config;return i((r||"")+c.open+["#([\\s\\S])+?","([^{#}])*?"][e||0]+c.close+(n||""))},n.prototype.parse=function(e,r){var n=this,c=n.config,t=e,o=i("^"+c.open+"#",""),p=i(c.close+"$","");if("string"!=typeof e)return e;e='"use strict";var view = "'+(e=e.replace(/\s+|\r|\t|\n/g," ").replace(i(c.open+"#"),c.open+"# ").replace(i(c.close+"}"),"} "+c.close).replace(/\\/g,"\\\\").replace(i(c.open+"!(.+?)!"+c.close),function(e){return e=e.replace(i("^"+c.open+"!"),"").replace(i("!"+c.close),"").replace(i(c.open+"|"+c.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(n.tagExp(),function(e){return'";'+(e=e.replace(o,"").replace(p,"")).replace(/\\(.)/g,"$1")+';view+="'}).replace(n.tagExp(1),function(e){var r='"+laytpl.escape(';return e.replace(/\s/g,"")===c.open+c.close?"":(e=e.replace(i(c.open+"|"+c.close),""),/^=/.test(e)?e=e.replace(/^=/,""):/^-/.test(e)&&(e=e.replace(/^-/,""),r='"+('),r+e.replace(/\\(.)/g,"$1")+')+"')}))+'";return view;';try{return n.cache=e=new Function("d, laytpl",e),e(r,l)}catch(a){return delete n.cache,u(a,t)}},n.prototype.render=function(e,r){e=e||{};var n=this,e=n.cache?n.cache(e,l):n.parse(n.template,e);return"function"==typeof r&&r(e),e},function(e,r){return new n(e,r)});r.config=function(e){for(var r in e=e||{})c[r]=e[r]},r.v="2.0.0",e("laytpl",r)});layui.define(function(e){"use strict";var r=document,u="getElementById",c="getElementsByTagName",a="layui-disabled",t=function(e){var a=this;a.config=e||{},a.config.index=++o.index,a.render(!0)},o=(t.prototype.type=function(){var e=this.config;if("object"==typeof e.elem)return e.elem.length===undefined?2:3},t.prototype.view=function(){var t,i,n=this.config,r=n.groups="groups"in n?Number(n.groups)||0:5,u=(n.layout="object"==typeof n.layout?n.layout:["prev","page","next"],n.count=Number(n.count)||0,n.curr=Number(n.curr)||1,n.limits="object"==typeof n.limits?n.limits:[10,20,30,40,50],n.limit=Number(n.limit)||10,n.pages=Math.ceil(n.count/n.limit)||1,n.curr>n.pages?n.curr=n.pages:n.curr<1&&(n.curr=1),r<0?r=1:r>n.pages&&(r=n.pages),n.prev="prev"in n?n.prev:"上一页",n.next="next"in n?n.next:"下一页",n.pages>r?Math.ceil((n.curr+(1'+n.prev+"":"",page:function(){var e=[];if(n.count<1)return"";1'+(n.first||1)+"");var a=Math.floor((r-1)/2),t=1n.pages?n.pages:a:r;for(i-t…');t<=i;t++)t===n.curr?e.push('"+t+""):e.push(''+t+"");return n.pages>r&&n.pages>i&&!1!==n.last&&(i+1…'),0!==r&&e.push(''+(n.last||n.pages)+"")),e.join("")}(),next:n.next?''+n.next+"":"",count:'\u5171 '+n.count+" \u6761",limit:(t=['"),refresh:['','',""].join(""),skip:['到第','','页',""].join("")};return['
          ',(i=[],layui.each(n.layout,function(e,a){l[a]&&i.push(l[a])}),i.join("")),"
          "].join("")},t.prototype.jump=function(e,a){if(e){var t=this,i=t.config,n=e.children,r=e[c]("button")[0],u=e[c]("input")[0],e=e[c]("select")[0],l=function(){var e=Number(u.value.replace(/\s|\D/g,""));e&&(i.curr=e,t.render())};if(a)return l();for(var s=0,p=n.length;si.pages||(i.curr=e,t.render())});e&&o.on(e,"change",function(){var e=this.value;i.curr*e>i.count&&(i.curr=Math.ceil(i.count/e)),i.limit=e,t.render()}),r&&o.on(r,"click",function(){l()})}},t.prototype.skip=function(t){var i,e;t&&(i=this,(e=t[c]("input")[0])&&o.on(e,"keyup",function(e){var a=this.value,e=e.keyCode;/^(37|38|39|40)$/.test(e)||(/\D/.test(a)&&(this.value=a.replace(/\D/,"")),13===e&&i.jump(t,!0))}))},t.prototype.render=function(e){var a=this,t=a.config,i=a.type(),n=a.view(),i=(2===i?t.elem&&(t.elem.innerHTML=n):3===i?t.elem.html(n):r[u](t.elem)&&(r[u](t.elem).innerHTML=n),t.jump&&t.jump(t,e),r[u]("layui-laypage-"+t.index));a.jump(i),t.hash&&!e&&(location.hash="!"+t.hash+"="+t.curr),a.skip(i)},{render:function(e){return new t(e).index},index:layui.laypage?layui.laypage.index+1e4:0,on:function(a,e,t){return a.attachEvent?a.attachEvent("on"+e,function(e){e.target=e.srcElement,t.call(a,e)}):a.addEventListener(e,t,!1),this}});e("laypage",o)});!function(i,g){"use strict";var n=i.layui&&layui.define,l={getPath:i.lay&&lay.getPath?lay.getPath:"",link:function(e,t,a){v.path&&i.lay&&lay.layui&&lay.layui.link(v.path+e,t,a)}},e=i.LAYUI_GLOBAL||{},d="layui-laydate-id",v={v:"5.5.0",config:{weekStart:0},index:i.laydate&&i.laydate.v?1e5:0,path:e.laydate_dir||l.getPath,set:function(e){var t=this;return t.config=lay.extend({},t.config,e),t},ready:function(e){var t="laydate",a=(n?"modules/":"")+"laydate.css?v="+v.v;return n?layui["layui.all"]?"function"==typeof e&&e():layui.addcss(a,e,t):l.link(a,e,t),this}},s=function(){var t=this,e=t.config.id;return(s.that[e]=t).inst={hint:function(e){t.hint.call(t,e)},reload:function(e){t.reload.call(t,e)},config:t.config}},a="laydate",x="layui-this",k="laydate-disabled",h=[100,2e5],D="layui-laydate-static",w="layui-laydate-list",o="laydate-selected",r="layui-laydate-hint",y="laydate-day-prev",m="laydate-day-next",C=".laydate-btns-confirm",M="laydate-time-text",L="laydate-btns-time",T="layui-laydate-preview",E="layui-laydate-shade",S=function(e){var t,a=this,n=(a.index=++v.index,a.config=lay.extend({},a.config,v.config,e),lay(e.elem||a.config.elem));return 1\u8bf7\u91cd\u65b0\u9009\u62e9",invalidDate:"\u4e0d\u5728\u6709\u6548\u65e5\u671f\u6216\u65f6\u95f4\u8303\u56f4\u5185",formatError:["\u65e5\u671f\u683c\u5f0f\u4e0d\u5408\u6cd5
          \u5fc5\u987b\u9075\u5faa\u4e0b\u8ff0\u683c\u5f0f\uff1a
          ","
          \u5df2\u4e3a\u4f60\u91cd\u7f6e"],preview:"\u5f53\u524d\u9009\u4e2d\u7684\u7ed3\u679c"},en:{weeks:["Su","Mo","Tu","We","Th","Fr","Sa"],time:["Hours","Minutes","Seconds"],timeTips:"Select Time",startTime:"Start Time",endTime:"End Time",dateTips:"Select Date",month:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tools:{confirm:"Confirm",clear:"Clear",now:"Now"},timeout:"End time cannot be less than start Time
          Please re-select",invalidDate:"Invalid date",formatError:["The date format error
          Must be followed\uff1a
          ","
          It has been reset"],preview:"The selected result"}};return e[this.config.lang]||e.cn},S.prototype.reload=function(e){this.config=lay.extend({},this.config,e),this.init()},S.prototype.init=function(){var r=this,o=r.config,e="static"===o.position,t={year:"yyyy",month:"yyyy-MM",date:"yyyy-MM-dd",time:"HH:mm:ss",datetime:"yyyy-MM-dd HH:mm:ss"};o.elem=lay(o.elem),o.eventElem=lay(o.eventElem),o.elem[0]&&("array"!==layui.type(o.theme)&&(o.theme=[o.theme]),o.fullPanel&&("datetime"!==o.type||o.range)&&delete o.fullPanel,r.rangeStr=o.range?"string"==typeof o.range?o.range:"-":"",r.rangeLinked=!(!o.range||!o.rangeLinked||"date"!==o.type&&"datetime"!==o.type),r.autoCalendarModel=function(){var e=r.rangeLinked;return r.rangeLinked=o.range&&("date"===o.type||"datetime"===o.type)&&(!r.startDate||!r.endDate||r.startDate&&r.endDate&&r.startDate.year===r.endDate.year&&r.startDate.month===r.endDate.month),lay(r.elem)[r.rangeLinked?"addClass":"removeClass"]("layui-laydate-linkage"),r.rangeLinked!=e},r.autoCalendarModel.auto=r.rangeLinked&&"auto"===o.rangeLinked,"array"===layui.type(o.range)&&(r.rangeElem=[lay(o.range[0]),lay(o.range[1])]),t[o.type]||(i.console&&console.error&&console.error("laydate type error:'"+o.type+"' is not supported"),o.type="date"),o.format===t.date&&(o.format=t[o.type]||t.date),r.format=s.formatArr(o.format),o.weekStart&&!/^[0-6]$/.test(o.weekStart)&&(t=r.lang(),o.weekStart=t.weeks.indexOf(o.weekStart),-1===o.weekStart&&(o.weekStart=0)),r.EXP_IF="",r.EXP_SPLIT="",lay.each(r.format,function(e,t){e=new RegExp(u).test(t)?"\\d{"+(new RegExp(u).test(r.format[0===e?e+1:e-1]||"")?/^yyyy|y$/.test(t)?4:t.length:/^yyyy$/.test(t)?"1,4":/^y$/.test(t)?"1,308":"1,2")+"}":"\\"+t;r.EXP_IF=r.EXP_IF+e,r.EXP_SPLIT=r.EXP_SPLIT+"("+e+")"}),r.EXP_IF_ONE=new RegExp("^"+r.EXP_IF+"$"),r.EXP_IF=new RegExp("^"+(o.range?r.EXP_IF+"\\s\\"+r.rangeStr+"\\s"+r.EXP_IF:r.EXP_IF)+"$"),r.EXP_SPLIT=new RegExp("^"+r.EXP_SPLIT+"$",""),r.isInput(o.elem[0])||"focus"===o.trigger&&(o.trigger="click"),o.elem.attr("lay-key",r.index),o.eventElem.attr("lay-key",r.index),o.elem.attr(d,o.id),o.mark=lay.extend({},o.calendar&&"cn"===o.lang?{"0-1-1":"\u5143\u65e6","0-2-14":"\u60c5\u4eba","0-3-8":"\u5987\u5973","0-3-12":"\u690d\u6811","0-4-1":"\u611a\u4eba","0-5-1":"\u52b3\u52a8","0-5-4":"\u9752\u5e74","0-6-1":"\u513f\u7ae5","0-9-10":"\u6559\u5e08","0-10-1":"\u56fd\u5e86","0-12-25":"\u5723\u8bde"}:{},o.mark),lay.each(["min","max"],function(e,t){var a=[],n=[];if("number"==typeof o[t])var i=o[t],l=new Date,l=r.newDate({year:l.getFullYear(),month:l.getMonth(),date:l.getDate(),hours:e?23:0,minutes:e?59:0,seconds:e?59:0}).getTime(),e=new Date(i?i<864e5?l+864e5*i:i:l),a=[e.getFullYear(),e.getMonth()+1,e.getDate()],n=[e.getHours(),e.getMinutes(),e.getSeconds()];else if("string"==typeof o[t])a=(o[t].match(/\d+-\d+-\d+/)||[""])[0].split("-"),n=(o[t].match(/\d+:\d+:\d+/)||[""])[0].split(":");else if("object"==typeof o[t])return o[t];o[t]={year:0|a[0]||(new Date).getFullYear(),month:a[1]?(0|a[1])-1:(new Date).getMonth(),date:0|a[2]||(new Date).getDate(),hours:0|n[0],minutes:0|n[1],seconds:0|n[2]}}),r.elemID="layui-laydate"+o.elem.attr("lay-key"),(o.show||e)&&r.render(),e||r.events(),o.value&&o.isInitValue&&("date"===layui.type(o.value)?r.setValue(r.parse(0,r.systemDate(o.value))):r.setValue(o.value)))},S.prototype.render=function(){var a,n,i,l,r=this,o=r.config,d=r.lang(),s="static"===o.position,y=r.elem=lay.elem("div",{id:r.elemID,"class":["layui-laydate",o.range?" layui-laydate-range":"",r.rangeLinked?" layui-laydate-linkage":"",s?" "+D:"",o.fullPanel?" laydate-theme-fullpanel":"",(a="",lay.each(o.theme,function(e,t){"default"===t||/^#/.test(t)||(a+=" laydate-theme-"+t)}),a)].join("")}),m=r.elemMain=[],u=r.elemHeader=[],c=r.elemCont=[],h=r.table=[],e=r.footer=lay.elem("div",{"class":"layui-laydate-footer"}),t=r.shortcut=lay.elem("ul",{"class":"layui-laydate-shortcut"}),f=(o.zIndex&&(y.style.zIndex=o.zIndex),lay.each(new Array(2),function(e){if(!o.range&&0'+d.timeTips+""),(o.range||"datetime"!==o.type||o.fullPanel)&&f.push(''),lay.each(o.btns,function(e,t){var a=d.tools[t]||"btn";o.range&&"now"===t||(s&&"clear"===t&&(a="cn"===o.lang?"\u91cd\u7f6e":"Reset"),n.push(''+a+""))}),f.push('"),f.join(""))),o.shortcuts&&(y.appendChild(t),lay(t).html((i=[],lay.each(o.shortcuts,function(e,t){i.push('
        • '+t.text+"
        • ")}),i.join(""))).find("li").on("click",function(e){var t=(o.shortcuts[this.dataset.index]||{}).value||[],n=(layui.isArray(t)||(t=[t]),o.type),t=(lay.each(t,function(e,t){var a=[o.dateTime,r.endDate][e];"time"===n&&"date"!==layui.type(t)?r.EXP_IF.test(t)&&(t=(t.match(r.EXP_SPLIT)||[]).slice(1),lay.extend(a,{hours:0|t[0],minutes:0|t[2],seconds:0|t[4]})):lay.extend(a,r.systemDate("date"===layui.type(t)?t:new Date(t))),"time"!==n&&"datetime"!==n||(r[["startTime","endTime"][e]]={hours:a.hours,minutes:a.minutes,seconds:a.seconds}),0===e?r.startDate=lay.extend({},a):r.endState=!0,"year"===n||"month"===n||"time"===n?r.listYM[e]=[a.year,a.month+1]:e&&r.autoCalendarModel.auto&&r.autoCalendarModel()}),r.checkDate("limit").calendar(null,null,"init"),lay(r.footer).find("."+L).removeClass(k));t&&"date"===t.attr("lay-type")&&t[0].click(),r.done(null,"change"),lay(this).addClass(x),"static"!==o.position&&r.setValue(r.parse()).done().remove()})),lay.each(m,function(e,t){y.appendChild(t)}),o.showBottom&&y.appendChild(e),lay.elem("style")),p=[],t=(lay.each(o.theme,function(e,t){/^#/.test(t)&&(l=!0,p.push(["#{{id}} .layui-laydate-header{background-color:{{theme}};}","#{{id}} li.layui-this,#{{id}} td.layui-this>div{background-color:{{theme}} !important;}",-1!==o.theme.indexOf("circle")?"":"#{{id}} .layui-this{background-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,r.elemID).replace(/{{theme}}/g,t)))}),o.shortcuts&&o.range&&p.push("#{{id}}.layui-laydate-range{width: 628px;}".replace(/{{id}}/g,r.elemID)),p.length&&(p=p.join(""),"styleSheet"in f?(f.setAttribute("type","text/css"),f.styleSheet.cssText=p):f.innerHTML=p,l&&lay(y).addClass("laydate-theme-molv"),y.appendChild(f)),r.remove(S.thisElemDate),v.thisId=o.id,s?o.elem.append(y):(g.body.appendChild(y),r.position()),o.shade?'
          ':"");y.insertAdjacentHTML("beforebegin",t),r.checkDate().calendar(null,0,"init"),r.changeEvent(),S.thisElemDate=r.elemID,r.renderAdditional(),"function"==typeof o.ready&&o.ready(lay.extend({},o.dateTime,{month:o.dateTime.month+1})),r.preview()},S.prototype.remove=function(e){var t=this,a=t.config,n=lay("#"+(e||t.elemID));return n[0]&&(n.hasClass(D)||t.checkDate(function(){n.remove(),delete t.startDate,delete t.endDate,delete t.endState,delete t.startTime,delete t.endTime,delete v.thisId,"function"==typeof a.close&&a.close(t)}),lay("."+E).remove()),t},S.prototype.position=function(){var e=this.config;return lay.position(e.elem[0],this.elem,{position:e.position}),this},S.prototype.hint=function(e){var t=this,a=(t.config,lay.elem("div",{"class":r}));t.elem&&(a.innerHTML=(e="object"==typeof e?e||{}:{content:e}).content||"",lay(t.elem).find("."+r).remove(),t.elem.appendChild(a),clearTimeout(t.hinTimer),t.hinTimer=setTimeout(function(){lay(t.elem).find("."+r).remove()},"ms"in e?e.ms:3e3))},S.prototype.getAsYM=function(e,t,a){return a?t--:t++,t<0&&(t=11,e--),11h[1]&&(e.year=h[1],o=!0),11t&&(e.date=t,o=!0))},r=function(n,i,l){var r=["startTime","endTime"];i=(i.match(d.EXP_SPLIT)||[]).slice(1),l=l||0,s.range&&(d[r[l]]=d[r[l]]||{}),lay.each(d.format,function(e,t){var a=parseFloat(i[e]);i[e].lengthd.getDateTime(s.max)?(n=s.dateTime=lay.extend({},s.max),u=!0):d.getDateTime(n)d.getDateTime(s.max))&&(d.endDate=lay.extend({},s.max),u=!0),d.startTime={hours:s.dateTime.hours,minutes:s.dateTime.minutes,seconds:s.dateTime.seconds},d.endTime={hours:d.endDate.hours,minutes:d.endDate.minutes,seconds:d.endDate.seconds},"month"===s.type&&(s.dateTime.date=1,d.endDate.date=1)),u&&l&&(d.setValue(d.parse()),d.hint("value "+a.invalidDate+a.formatError[1])),d.startDate=d.startDate||l&&lay.extend({},s.dateTime),d.autoCalendarModel.auto&&d.autoCalendarModel(),d.endState=!s.range||!d.rangeLinked||!(!d.startDate||!d.endDate),e&&e(),d},S.prototype.mark=function(e,a){var n,t=this.config;return lay.each(t.mark,function(e,t){e=e.split("-");e[0]!=a[0]&&0!=e[0]||e[1]!=a[1]&&0!=e[1]||e[2]!=a[2]||(n=t||a[2])}),n&&e.find("div").html(''+n+""),this},S.prototype.holidays=function(n,i){var e=this.config,l=["","work"];return"array"!==layui.type(e.holidays)||lay.each(e.holidays,function(a,e){lay.each(e,function(e,t){t===n.attr("lay-ymd")&&n.find("div").html('"+i[2]+"")})}),this},S.prototype.limit=function(t){t=t||{};var i=this,e=i.config,l={},a=t.index>(t.time?0:41)?i.endDate:e.dateTime;return lay.each({now:lay.extend({},a,t.date||{}),min:e.min,max:e.max},function(e,a){var n;l[e]=i.newDate(lay.extend({year:a.year,month:"year"===t.type?0:a.month,date:"year"===t.type||"month"===t.type?1:a.date},(n={},lay.each(t.time,function(e,t){n[t]=a[t]}),n))).getTime()}),a=l.nowl.max,t.elem&&t.elem[a?"addClass":"removeClass"](k),a},S.prototype.thisDateTime=function(e){var t=this.config;return e?this.endDate:t.dateTime},S.prototype.calendar=function(e,t,a){var i,l,r,o=this,n=o.config,t=t?1:0,d=e||o.thisDateTime(t),s=new Date,y=o.lang(),m="date"!==n.type&&"datetime"!==n.type,u=lay(o.table[t]).find("td"),c=lay(o.elemHeader[t][2]).find("span");return d.yearh[1]&&(d.year=h[1],o.hint(y.invalidDate)),o.firstDate||(o.firstDate=lay.extend({},d)),s.setFullYear(d.year,d.month,1),i=(s.getDay()+(7-n.weekStart))%7,l=v.getEndDate(d.month||12,d.year),r=v.getEndDate(d.month+1,d.year),lay.each(u,function(e,t){var a=[d.year,d.month],n=0;(t=lay(t)).removeAttr("class"),e"+a[2]+"
          "),o.mark(t,a).holidays(t,a).limit({elem:t,date:{year:a[0],month:a[1]-1,date:a[2]},index:e})}),lay(c[0]).attr("lay-ym",d.year+"-"+(d.month+1)),lay(c[1]).attr("lay-ym",d.year+"-"+(d.month+1)),"cn"===n.lang?(lay(c[0]).attr("lay-type","year").html(d.year+" \u5e74"),lay(c[1]).attr("lay-type","month").html(d.month+1+" \u6708")):(lay(c[0]).attr("lay-type","month").html(y.month[d.month]),lay(c[1]).attr("lay-type","year").html(d.year)),m&&(n.range?!e&&"init"===a||(o.listYM=[[(o.startDate||n.dateTime).year,(o.startDate||n.dateTime).month+1],[o.endDate.year,o.endDate.month+1]],o.list(n.type,0).list(n.type,1),"time"===n.type?o.setBtnStatus("\u65f6\u95f4",lay.extend({},o.systemDate(),o.startTime),lay.extend({},o.systemDate(),o.endTime)):o.setBtnStatus(!0)):(o.listYM=[[d.year,d.month+1]],o.list(n.type,0))),n.range&&"init"===a&&(o.rangeLinked?(s=o.getAsYM(d.year,d.month,t?"sub":null),o.calendar(lay.extend({},d,{year:s[0],month:s[1]}),1-t)):o.calendar(null,1-t)),n.range||(u=["hours","minutes","seconds"],o.limit({elem:lay(o.footer).find(".laydate-btns-now"),date:o.systemDate(),index:0,time:u}),o.limit({elem:lay(o.footer).find(C),index:0,time:u})),o.setBtnStatus(),lay(o.shortcut).find("li."+x).removeClass(x),n.range&&!m&&"init"!==a&&o.stampRange(),o},S.prototype.list=function(n,i){var l,r,e,o,d=this,s=d.config,y=d.rangeLinked?s.dateTime:[s.dateTime,d.endDate][i],m=d.lang(),t=s.range&&"date"!==s.type&&"datetime"!==s.type,u=lay.elem("ul",{"class":w+" "+{year:"laydate-year-list",month:"laydate-month-list",time:"laydate-time-list"}[n]}),a=d.elemHeader[i],c=lay(a[2]).find("span"),h=d.elemCont[i||0],f=lay(h).find("."+w)[0],p="cn"===s.lang,g=p?"\u5e74":"",v=d.listYM[i]||{},D=["hours","minutes","seconds"],T=["startTime","endTime"][i];return v[0]<1&&(v[0]=1),"year"===n?(e=l=v[0]-7,l<1&&(e=l=1),lay.each(new Array(15),function(e){var t=lay.elem("li",{"lay-ym":l}),a={year:l,month:0,date:1};l==v[0]&&lay(t).addClass(x),t.innerHTML=l+g,u.appendChild(t),d.limit({elem:lay(t),date:a,index:i,type:n}),l++}),lay(c[p?0:1]).attr("lay-ym",l-8+"-"+v[1]).html(e+g+" - "+(l-1)+g)):"month"===n?(lay.each(new Array(12),function(e){var t=lay.elem("li",{"lay-ym":e}),a={year:v[0],month:e,date:1};e+1==v[1]&&lay(t).addClass(x),t.innerHTML=m.month[e]+(p?"\u6708":""),u.appendChild(t),d.limit({elem:lay(t),date:a,index:i,type:n})}),lay(c[p?0:1]).attr("lay-ym",v[0]+"-"+v[1]).html(v[0]+g)):"time"===n&&(r=function(){lay(u).find("ol").each(function(a,e){lay(e).find("li").each(function(e,t){d.limit({elem:lay(t),date:[{hours:e},{hours:d[T].hours,minutes:e},{hours:d[T].hours,minutes:d[T].minutes,seconds:e}][a],index:i,time:[["hours"],["hours","minutes"],["hours","minutes","seconds"]][a]})})}),s.range||d.limit({elem:lay(d.footer).find(C),date:d[T],inedx:0,time:["hours","minutes","seconds"]})},s.range?d[T]||(d[T]="startTime"===T?y:d.endDate):d[T]=y,lay.each([24,60,60],function(t,e){var a=lay.elem("li"),n=["

          "+m.time[t]+"

            "];lay.each(new Array(e),function(e){n.push(""+lay.digit(e,2)+"")}),a.innerHTML=n.join("")+"
          ",u.appendChild(a)}),r()),f&&h.removeChild(f),h.appendChild(u),"year"===n||"month"===n?(lay(d.elemMain[i]).addClass("laydate-ym-show"),lay(u).find("li").on("click",function(){var e=0|lay(this).attr("lay-ym");lay(this).hasClass(k)||(d.rangeLinked?lay.extend(y,{year:"year"===n?e:v[0],month:"year"===n?v[1]-1:e}):y[n]=e,"year"===s.type||"month"===s.type?(lay(u).find("."+x).removeClass(x),lay(this).addClass(x),"month"===s.type&&"year"===n&&(d.listYM[i][0]=e,t&&((i?d.endDate:y).year=e),d.list("month",i))):(d.checkDate("limit").calendar(y,i,"init"),d.closeList()),d.setBtnStatus(),!s.range&&s.autoConfirm&&("month"===s.type&&"month"===n||"year"===s.type&&"year"===n)&&d.setValue(d.parse()).done().remove(),d.autoCalendarModel.auto&&!d.rangeLinked?d.choose(lay(h).find("td.layui-this"),i):d.endState&&d.done(null,"change"),lay(d.footer).find("."+L).removeClass(k))})):(e=lay.elem("span",{"class":M}),o=function(){lay(u).find("ol").each(function(e){var a=this,t=lay(a).find("li");a.scrollTop=30*(d[T][D[e]]-2),a.scrollTop<=0&&t.each(function(e,t){if(!lay(this).hasClass(k))return a.scrollTop=30*(e-2),!0})})},c=lay(a[2]).find("."+M),o(),e.innerHTML=s.range?[m.startTime,m.endTime][i]:m.timeTips,lay(d.elemMain[i]).addClass("laydate-time-show"),c[0]&&c.remove(),a[2].appendChild(e),lay(u).find("ol").each(function(t){var a=this;lay(a).find("li").on("click",function(){var e=0|this.innerHTML;lay(this).hasClass(k)||(s.range?d[T][D[t]]=e:y[D[t]]=e,lay(a).find("."+x).removeClass(x),lay(this).addClass(x),r(),o(),(d.endDate||"time"===s.type||"datetime"===s.type&&s.fullPanel)&&d.done(null,"change"),d.setBtnStatus())})})),d},S.prototype.listYM=[],S.prototype.closeList=function(){var a=this;a.config;lay.each(a.elemCont,function(e,t){lay(this).find("."+w).remove(),lay(a.elemMain[e]).removeClass("laydate-ym-show laydate-time-show")}),lay(a.elem).find("."+M).remove()},S.prototype.setBtnStatus=function(e,t,a){var n=this,i=n.config,l=n.lang(),r=lay(n.footer).find(C);i.range&&"time"!==i.type&&(t=t||(n.rangeLinked?n.startDate:i.dateTime),a=a||n.endDate,i=!n.endState||n.newDate(t).getTime()>n.newDate(a).getTime(),n.limit({date:t})||n.limit({date:a})?r.addClass(k):r[i?"addClass":"removeClass"](k),e&&i&&n.hint("string"==typeof e?l.timeout.replace(/\u65e5\u671f/g,e):l.timeout))},S.prototype.parse=function(e,t){var a=this,n=a.config,t=t||("end"==e?lay.extend({},a.endDate,a.endTime):n.range?lay.extend({},a.rangeLinked?a.startDate:n.dateTime,a.startTime):n.dateTime),t=v.parse(t,a.format,1);return n.range&&e===undefined?t+" "+a.rangeStr+" "+a.parse("end"):t},S.prototype.newDate=function(e){return e=e||{},new Date(e.year||1,e.month||0,e.date||1,e.hours||0,e.minutes||0,e.seconds||0)},S.prototype.getDateTime=function(e){return this.newDate(e).getTime()},S.prototype.setValue=function(e){var t=this,a=t.config,n=a.elem[0];return"static"===a.position||(e=e||"",t.isInput(n)?lay(n).val(e):(a=t.rangeElem)?("array"!==layui.type(e)&&(e=e.split(" "+t.rangeStr+" ")),a[0].val(e[0]||""),a[1].val(e[1]||"")):(0===lay(n).find("*").length&&lay(n).html(e),lay(n).attr("lay-date",e))),t},S.prototype.preview=function(){var e,t=this,a=t.config;a.isPreview&&(e=lay(t.elem).find("."+T),a=!a.range||(t.rangeLinked?t.endState:t.endDate)?t.parse():"",e.html(a),e.html()&&(e.css({color:"#16b777"}),setTimeout(function(){e.css({color:"#777"})},300)))},S.prototype.renderAdditional=function(){this.config.fullPanel&&this.list("time",0)},S.prototype.stampRange=function(){var n,i=this,l=i.config,r=i.rangeLinked?i.startDate:l.dateTime,e=lay(i.elem).find("td");l.range&&!i.endState&&lay(i.footer).find(C).addClass(k),r=r&&i.newDate({year:r.year,month:r.month,date:r.date}).getTime(),n=i.endState&&i.endDate&&i.newDate({year:i.endDate.year,month:i.endDate.month,date:i.endDate.date}).getTime(),lay.each(e,function(e,t){var a=lay(t).attr("lay-ymd").split("-"),a=i.newDate({year:a[0],month:a[1]-1,date:a[2]}).getTime();l.rangeLinked&&!i.startDate&&a===i.newDate(i.systemDate()).getTime()&&lay(t).addClass(lay(t).hasClass(y)||lay(t).hasClass(m)?"":"laydate-day-now"),lay(t).removeClass(o+" "+x),a!==r&&a!==n||(i.rangeLinked||!i.rangeLinked&&(e<42?a===r:a===n))&&lay(t).addClass(lay(t).hasClass(y)||lay(t).hasClass(m)?o:x),rn.getDateTime(i.max)&&(n[t]={hours:i.max.hours,minutes:i.max.minutes,seconds:i.max.seconds},lay.extend(l,n[t])))}),a||(n.startDate=lay.extend({},l)),n.endState&&!n.limit({date:n.thisDateTime(1-a)})&&(((r=n.endState&&n.autoCalendarModel.auto?n.autoCalendarModel():r)||n.rangeLinked&&n.endState)&&n.newDate(n.startDate)>n.newDate(n.endDate)&&(e=n.startDate.year===n.endDate.year&&n.startDate.month===n.endDate.month&&n.startDate.date===n.endDate.date,o=n.startDate,n.startDate=lay.extend({},n.endDate,e?{}:n.startTime),i.dateTime=lay.extend({},n.startDate),n.endDate=lay.extend({},o,e?{}:n.endTime),e&&(o=n.startTime,n.startTime=n.endTime,n.endTime=o)),r&&(i.dateTime=lay.extend({},n.startDate))),n.rangeLinked?(e=lay.extend({},l),!t||a||r||(o=n.getAsYM(l.year,l.month,"sub"),lay.extend(i.dateTime,{year:o[0],month:o[1]})),n.calendar(e,t,r?"init":null)):n.calendar(null,a,r?"init":null),n.endState&&n.done(null,"change")):"static"===i.position?n.calendar().done().done(null,"change"):"date"===i.type?i.autoConfirm?n.setValue(n.parse()).done().remove():n.calendar().done(null,"change"):"datetime"===i.type&&n.calendar().done(null,"change"))},S.prototype.tool=function(t,e){var a=this,n=a.config,i=a.lang(),l=n.dateTime,r="static"===n.position,o={datetime:function(){lay(t).hasClass(k)||(a.list("time",0),n.range&&a.list("time",1),lay(t).attr("lay-type","date").html(a.lang().dateTips))},date:function(){a.closeList(),lay(t).attr("lay-type","datetime").html(a.lang().timeTips)},clear:function(){r&&(lay.extend(l,a.firstDate),a.calendar()),n.range&&(delete n.dateTime,delete a.endDate,delete a.startTime,delete a.endTime),a.setValue(""),a.done(null,"onClear").done(["",{},{}]).remove()},now:function(){var e=new Date;if(lay(t).hasClass(k))return a.hint(i.tools.now+", "+i.invalidDate);lay.extend(l,a.systemDate(),{hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds()}),a.setValue(a.parse()),r&&a.calendar(),a.done(null,"onNow").done().remove()},confirm:function(){if(n.range){if(lay(t).hasClass(k))return a.hint("time"===n.type?i.timeout.replace(/\u65e5\u671f/g,"\u65f6\u95f4"):i.timeout)}else if(lay(t).hasClass(k))return a.hint(i.invalidDate);a.setValue(a.parse()),a.done(null,"onConfirm").done().remove()}};o[e]&&o[e]()},S.prototype.change=function(n){var i=this,l=i.config,r=i.thisDateTime(n),o=l.range&&("year"===l.type||"month"===l.type),d=i.elemCont[n||0],s=i.listYM[n],e=function(e){var t=lay(d).find(".laydate-year-list")[0],a=lay(d).find(".laydate-month-list")[0];return t&&(s[0]=e?s[0]-15:s[0]+15,i.list("year",n)),a&&(e?s[0]--:s[0]++,i.list("month",n)),(t||a)&&(lay.extend(r,{year:s[0]}),o&&(r.year=s[0]),l.range||i.done(null,"change"),l.range||i.limit({elem:lay(i.footer).find(C),date:{year:s[0]}})),i.setBtnStatus(),t||a};return{prevYear:function(){e("sub")||(i.rangeLinked?(l.dateTime.year--,i.checkDate("limit").calendar(null,null,"init")):(r.year--,i.checkDate("limit").calendar(null,n),i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change")))},prevMonth:function(){i.rangeLinked&&(r=l.dateTime);var e=i.getAsYM(r.year,r.month,"sub");lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,null,"init"),i.rangeLinked||(i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change"))},nextMonth:function(){i.rangeLinked&&(r=l.dateTime);var e=i.getAsYM(r.year,r.month);lay.extend(r,{year:e[0],month:e[1]}),i.checkDate("limit").calendar(null,null,"init"),i.rangeLinked||(i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change"))},nextYear:function(){e()||(i.rangeLinked?(l.dateTime.year++,i.checkDate("limit").calendar(null,0,"init")):(r.year++,i.checkDate("limit").calendar(null,n),i.autoCalendarModel.auto?i.choose(lay(d).find("td.layui-this"),n):i.done(null,"change")))}}},S.prototype.changeEvent=function(){var i=this;i.config;lay(i.elem).on("click",function(e){lay.stope(e)}).on("mousedown",function(e){lay.stope(e)}),lay.each(i.elemHeader,function(n,e){lay(e[0]).on("click",function(e){i.change(n).prevYear()}),lay(e[1]).on("click",function(e){i.change(n).prevMonth()}),lay(e[2]).find("span").on("click",function(e){var t=lay(this),a=t.attr("lay-ym"),t=t.attr("lay-type");a&&(a=a.split("-"),i.listYM[n]=[0|a[0],0|a[1]],i.list(t,n),lay(i.footer).find("."+L).addClass(k))}),lay(e[3]).on("click",function(e){i.change(n).nextMonth()}),lay(e[4]).on("click",function(e){i.change(n).nextYear()})}),lay.each(i.table,function(e,t){lay(t).find("td").on("click",function(){i.choose(lay(this),e)})}),lay(i.footer).find("span").on("click",function(){var e=lay(this).attr("lay-type");i.tool(this,e)})},S.prototype.isInput=function(e){return/input|textarea/.test(e.tagName.toLocaleLowerCase())||/INPUT|TEXTAREA/.test(e.tagName)},S.prototype.events=function(){var e,t=this,a=t.config;a.elem[0]&&!a.elem[0].eventHandler&&(a.elem.on(a.trigger,e=function(){v.thisId!==a.id&&t.render()}),a.elem[0].eventHandler=!0,a.eventElem.on(a.trigger,e),t.unbind=function(){t.remove(),a.elem.off(a.trigger,e),a.elem.removeAttr("lay-key"),a.elem.removeAttr(d),a.elem[0].eventHandler=!1,a.eventElem.off(a.trigger,e),a.eventElem.removeAttr("lay-key"),delete s.that[a.id]})},s.that={},s.getThis=function(e){var t=s.that[e];return!t&&n&&layui.hint().error(e?a+" instance with ID '"+e+"' not found":"ID argument required"),t},l.run=function(n){n(g).on("mousedown",function(e){var t,a;!v.thisId||(t=s.getThis(v.thisId))&&(a=t.config,e.target!==a.elem[0]&&e.target!==a.eventElem[0]&&e.target!==n(a.closeStop)[0]&&t.remove())}).on("keydown",function(e){var t;!v.thisId||(t=s.getThis(v.thisId))&&"static"!==t.config.position&&13===e.keyCode&&n("#"+t.elemID)[0]&&t.elemID===S.thisElemDate&&(e.preventDefault(),n(t.footer).find(C)[0].click())}),n(i).on("resize",function(){if(v.thisId){var e=s.getThis(v.thisId);if(e)return!(!e.elem||!n(".layui-laydate")[0])&&void e.position()}})},v.render=function(e){e=new S(e);return s.call(e)},v.reload=function(e,t){e=s.getThis(e);if(e)return e.reload(t)},v.getInst=function(e){e=s.getThis(e);if(e)return e.inst},v.hint=function(e,t){e=s.getThis(e);if(e)return e.hint(t)},v.unbind=function(e){e=s.getThis(e);if(e)return e.unbind()},v.close=function(e){e=s.getThis(e||v.thisId);if(e)return e.remove()},v.parse=function(a,n,i){return a=a||{},n=((n="string"==typeof n?s.formatArr(n):n)||[]).concat(),lay.each(n,function(e,t){/yyyy|y/.test(t)?n[e]=lay.digit(a.year,t.length):/MM|M/.test(t)?n[e]=lay.digit(a.month+(i||0),t.length):/dd|d/.test(t)?n[e]=lay.digit(a.date,t.length):/HH|H/.test(t)?n[e]=lay.digit(a.hours,t.length):/mm|m/.test(t)?n[e]=lay.digit(a.minutes,t.length):/ss|s/.test(t)&&(n[e]=lay.digit(a.seconds,t.length))}),n.join("")},v.getEndDate=function(e,t){var a=new Date;return a.setFullYear(t||a.getFullYear(),e||a.getMonth()+1,1),new Date(a.getTime()-864e5).getDate()},n?(v.ready(),layui.define("lay",function(e){v.path=layui.cache.dir,l.run(lay),e(a,v)})):"function"==typeof define&&define.amd?define(function(){return l.run(lay),v}):(v.ready(),l.run(i.lay),i.laydate=v)}(window,window.document);!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e):function(e){if(e.document)return t(e);throw new Error("jQuery requires a window with a document")}:t(e)}("undefined"!=typeof window?window:this,function(T,M){var f=[],g=T.document,c=f.slice,O=f.concat,R=f.push,P=f.indexOf,B={},W=B.toString,m=B.hasOwnProperty,y={},e="1.12.4",C=function(e,t){return new C.fn.init(e,t)},I=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,$=/^-ms-/,z=/-([\da-z])/gi,X=function(e,t){return t.toUpperCase()};function U(e){var t=!!e&&"length"in e&&e.length,n=C.type(e);return"function"!==n&&!C.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+a+")"+a+"*"),ee=new RegExp("="+a+"*([^\\]'\"]*?)"+a+"*\\]","g"),te=new RegExp(G),ne=new RegExp("^"+s+"$"),f={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),TAG:new RegExp("^("+s+"|[*])"),ATTR:new RegExp("^"+J),PSEUDO:new RegExp("^"+G),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+a+"*(even|odd|(([+-]|)(\\d*)n|)"+a+"*(?:([+-]|)"+a+"*(\\d+)|))"+a+"*\\)|)","i"),bool:new RegExp("^(?:"+Y+")$","i"),needsContext:new RegExp("^"+a+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+a+"*((?:-\\d)?\\d*)"+a+"*\\)|)(?=[^-]|$)","i")},re=/^(?:input|select|textarea|button)$/i,ie=/^h\d$/i,c=/^[^{]+\{\s*\[native \w/,oe=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ae=/[+~]/,se=/'|\\/g,d=new RegExp("\\\\([\\da-f]{1,6}"+a+"?|("+a+")|.)","ig"),p=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(65536+r):String.fromCharCode(r>>10|55296,1023&r|56320)},ue=function(){C()};try{D.apply(n=V.call(v.childNodes),v.childNodes),n[v.childNodes.length].nodeType}catch(F){D={apply:n.length?function(e,t){U.apply(e,V.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function H(e,t,n,r){var i,o,a,s,u,l,c,f,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!r&&((t?t.ownerDocument||t:v)!==E&&C(t),t=t||E,N)){if(11!==p&&(l=oe.exec(e)))if(i=l[1]){if(9===p){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&y(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return D.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&g.getElementsByClassName&&t.getElementsByClassName)return D.apply(n,t.getElementsByClassName(i)),n}if(g.qsa&&!A[e+" "]&&(!m||!m.test(e))){if(1!==p)d=t,f=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(se,"\\$&"):t.setAttribute("id",s=k),o=(c=w(e)).length,u=ne.test(s)?"#"+s:"[id='"+s+"']";o--;)c[o]=u+" "+_(c[o]);f=c.join(","),d=ae.test(e)&&de(t.parentNode)||t}if(f)try{return D.apply(n,d.querySelectorAll(f)),n}catch(h){}finally{s===k&&t.removeAttribute("id")}}}return P(e.replace(L,"$1"),t,n,r)}function le(){var n=[];function r(e,t){return n.push(e+" ")>b.cacheLength&&delete r[n.shift()],r[e+" "]=t}return r}function q(e){return e[k]=!0,e}function h(e){var t=E.createElement("div");try{return!!e(t)}catch(F){return!1}finally{t.parentNode&&t.parentNode.removeChild(t)}}function ce(e,t){for(var n=e.split("|"),r=n.length;r--;)b.attrHandle[n[r]]=t}function fe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||1<<31)-(~e.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function x(a){return q(function(o){return o=+o,q(function(e,t){for(var n,r=a([],e.length,o),i=r.length;i--;)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function de(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in g=H.support={},O=H.isXML=function(e){e=e&&(e.ownerDocument||e).documentElement;return!!e&&"HTML"!==e.nodeName},C=H.setDocument=function(e){var e=e?e.ownerDocument||e:v;return e!==E&&9===e.nodeType&&e.documentElement&&(t=(E=e).documentElement,N=!O(E),(e=E.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",ue,!1):e.attachEvent&&e.attachEvent("onunload",ue)),g.attributes=h(function(e){return e.className="i",!e.getAttribute("className")}),g.getElementsByTagName=h(function(e){return e.appendChild(E.createComment("")),!e.getElementsByTagName("*").length}),g.getElementsByClassName=c.test(E.getElementsByClassName),g.getById=h(function(e){return t.appendChild(e).id=k,!E.getElementsByName||!E.getElementsByName(k).length}),g.getById?(b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&N)return(e=t.getElementById(e))?[e]:[]},b.filter.ID=function(e){var t=e.replace(d,p);return function(e){return e.getAttribute("id")===t}}):(delete b.find.ID,b.filter.ID=function(e){var t=e.replace(d,p);return function(e){e="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return e&&e.value===t}}),b.find.TAG=g.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):g.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},b.find.CLASS=g.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&N)return t.getElementsByClassName(e)},r=[],m=[],(g.qsa=c.test(E.querySelectorAll))&&(h(function(e){t.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+a+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||m.push("\\["+a+"*(?:value|"+Y+")"),e.querySelectorAll("[id~="+k+"-]").length||m.push("~="),e.querySelectorAll(":checked").length||m.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||m.push(".#.+[+~]")}),h(function(e){var t=E.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&m.push("name"+a+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||m.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),m.push(",.*:")})),(g.matchesSelector=c.test(i=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.msMatchesSelector))&&h(function(e){g.disconnectedMatch=i.call(e,"div"),i.call(e,"[s!='']:x"),r.push("!=",G)}),m=m.length&&new RegExp(m.join("|")),r=r.length&&new RegExp(r.join("|")),e=c.test(t.compareDocumentPosition),y=e||c.test(t.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,t=t&&t.parentNode;return e===t||!(!t||1!==t.nodeType||!(n.contains?n.contains(t):e.compareDocumentPosition&&16&e.compareDocumentPosition(t)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=e?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!g.sortDetached&&t.compareDocumentPosition(e)===n?e===E||e.ownerDocument===v&&y(v,e)?-1:t===E||t.ownerDocument===v&&y(v,t)?1:u?j(u,e)-j(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===E?-1:t===E?1:i?-1:o?1:u?j(u,e)-j(u,t):0;if(i===o)return fe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?fe(a[r],s[r]):a[r]===v?-1:s[r]===v?1:0}),E},H.matches=function(e,t){return H(e,null,null,t)},H.matchesSelector=function(e,t){if((e.ownerDocument||e)!==E&&C(e),t=t.replace(ee,"='$1']"),g.matchesSelector&&N&&!A[t+" "]&&(!r||!r.test(t))&&(!m||!m.test(t)))try{var n=i.call(e,t);if(n||g.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(F){}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(d,p),e[3]=(e[3]||e[4]||e[5]||"").replace(d,p),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||H.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&H.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return f.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&te.test(n)&&(t=w(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(d,p).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=W[e+" "];return t||(t=new RegExp("(^|"+a+")"+e+"("+a+"|$)"))&&W(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(t,n,r){return function(e){e=H.attr(e,t);return null==e?"!="===n:!n||(e+="","="===n?e===r:"!="===n?e!==r:"^="===n?r&&0===e.indexOf(r):"*="===n?r&&-1(?:<\/\1>|)$/,G=/^.[^:#\[\.,]*$/;function K(e,n,r){if(C.isFunction(n))return C.grep(e,function(e,t){return!!n.call(e,t,e)!==r});if(n.nodeType)return C.grep(e,function(e){return e===n!==r});if("string"==typeof n){if(G.test(n))return C.filter(n,e,r);n=C.filter(n,e)}return C.grep(e,function(e){return-1)[^>]*|#([\w-]*))$/,ee=((C.fn.init=function(e,t,n){if(!e)return this;if(n=n||Q,"string"!=typeof e)return e.nodeType?(this.context=this[0]=e,this.length=1,this):C.isFunction(e)?"undefined"!=typeof n.ready?n.ready(e):e(C):(e.selector!==undefined&&(this.selector=e.selector,this.context=e.context),C.makeArray(e,this));if(!(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&3<=e.length?[null,e,null]:Z.exec(e))||!r[1]&&t)return(!t||t.jquery?t||n:this.constructor(t)).find(e);if(r[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:g,!0)),J.test(r[1])&&C.isPlainObject(t))for(var r in t)C.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}if((n=g.getElementById(r[2]))&&n.parentNode){if(n.id!==r[2])return Q.find(e);this.length=1,this[0]=n}return this.context=g,this.selector=e,this}).prototype=C.fn,Q=C(g),/^(?:parents|prev(?:Until|All))/),te={children:!0,contents:!0,next:!0,prev:!0};function ne(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t,n=C(e,this),r=n.length;return this.filter(function(){for(t=0;t
          a",y.leadingWhitespace=3===S.firstChild.nodeType,y.tbody=!S.getElementsByTagName("tbody").length,y.htmlSerialize=!!S.getElementsByTagName("link").length,y.html5Clone="<:nav>"!==g.createElement("nav").cloneNode(!0).outerHTML,q.type="checkbox",q.checked=!0,k.appendChild(q),y.appendChecked=q.checked,S.innerHTML="",y.noCloneChecked=!!S.cloneNode(!0).lastChild.defaultValue,k.appendChild(S),(q=g.createElement("input")).setAttribute("type","radio"),q.setAttribute("checked","checked"),q.setAttribute("name","t"),S.appendChild(q),y.checkClone=S.cloneNode(!0).cloneNode(!0).lastChild.checked,y.noCloneEvent=!!S.addEventListener,S[C.expando]=1,y.attributes=!S.getAttribute(C.expando);var x={option:[1,""],legend:[1,"
          ","
          "],area:[1,"",""],param:[1,"",""],thead:[1,"","
          "],tr:[2,"","
          "],col:[2,"","
          "],td:[3,"","
          "],_default:y.htmlSerialize?[0,"",""]:[1,"X
          ","
          "]};function b(e,t){var n,r,i=0,o="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):undefined;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||C.nodeName(r,t)?o.push(r):C.merge(o,b(r,t));return t===undefined||t&&C.nodeName(e,t)?C.merge([e],o):o}function we(e,t){for(var n,r=0;null!=(n=e[r]);r++)C._data(n,"globalEval",!t||C._data(t[r],"globalEval"))}x.optgroup=x.option,x.tbody=x.tfoot=x.colgroup=x.caption=x.thead,x.th=x.td;var Te=/<|&#?\w+;/,Ce=/"!==f[1]||Ce.test(a)?0:u:u.firstChild)&&a.childNodes.length;o--;)C.nodeName(c=a.childNodes[o],"tbody")&&!c.childNodes.length&&a.removeChild(c);for(C.merge(h,u.childNodes),u.textContent="";u.firstChild;)u.removeChild(u.firstChild);u=p.lastChild}else h.push(t.createTextNode(a));for(u&&p.removeChild(u),y.appendChecked||C.grep(b(h,"input"),Ee),g=0;a=h[g++];)if(r&&-1]","i"),Pe=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,Be=/\s*$/g,ze=be(g).appendChild(g.createElement("div"));function Xe(e,t){return C.nodeName(e,"table")&&C.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ue(e){return e.type=(null!==C.find.attr(e,"type"))+"/"+e.type,e}function Ve(e){var t=Ie.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function Ye(e,t){if(1===t.nodeType&&C.hasData(e)){var n,r,i,e=C._data(e),o=C._data(t,e),a=e.events;if(a)for(n in delete o.handle,o.events={},a)for(r=0,i=a[n].length;r")},clone:function(e,t,n){var r,i,o,a,s,u=C.contains(e.ownerDocument,e);if(y.html5Clone||C.isXMLDoc(e)||!Re.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(ze.innerHTML=e.outerHTML,ze.removeChild(o=ze.firstChild)),!(y.noCloneEvent&&y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||C.isXMLDoc(e)))for(r=b(o),s=b(e),a=0;null!=(i=s[a]);++a)if(r[a]){f=c=l=p=d=void 0;var l,c,f,d=i,p=r[a];if(1===p.nodeType){if(l=p.nodeName.toLowerCase(),!y.noCloneEvent&&p[C.expando]){for(c in(f=C._data(p)).events)C.removeEvent(p,c,f.handle);p.removeAttribute(C.expando)}"script"===l&&p.text!==d.text?(Ue(p).text=d.text,Ve(p)):"object"===l?(p.parentNode&&(p.outerHTML=d.outerHTML),y.html5Clone&&d.innerHTML&&!C.trim(p.innerHTML)&&(p.innerHTML=d.innerHTML)):"input"===l&&ge.test(d.type)?(p.defaultChecked=p.checked=d.checked,p.value!==d.value&&(p.value=d.value)):"option"===l?p.defaultSelected=p.selected=d.defaultSelected:"input"!==l&&"textarea"!==l||(p.defaultValue=d.defaultValue)}}if(t)if(n)for(s=s||b(e),r=r||b(o),a=0;null!=(i=s[a]);a++)Ye(i,r[a]);else Ye(e,o);return 0<(r=b(o,"script")).length&&we(r,!u&&b(e,"script")),r=s=i=null,o},cleanData:function(e,t){for(var n,r,i,o,a=0,s=C.expando,u=C.cache,l=y.attributes,c=C.event.special;null!=(n=e[a]);a++)if((t||v(n))&&(o=(i=n[s])&&u[i])){if(o.events)for(r in o.events)c[r]?C.event.remove(n,r):C.removeEvent(n,r,o.handle);u[i]&&(delete u[i],l||"undefined"==typeof n.removeAttribute?n[s]=undefined:n.removeAttribute(s),f.push(i))}}}),C.fn.extend({domManip:w,detach:function(e){return Je(this,e,!0)},remove:function(e){return Je(this,e)},text:function(e){return d(this,function(e){return e===undefined?C.text(this):this.empty().append((this[0]&&this[0].ownerDocument||g).createTextNode(e))},null,e,arguments.length)},append:function(){return w(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Xe(this,e).appendChild(e)})},prepend:function(){return w(this,arguments,function(e){var t;1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(t=Xe(this,e)).insertBefore(e,t.firstChild)})},before:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return w(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&C.cleanData(b(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&C.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return C.clone(this,e,t)})},html:function(e){return d(this,function(e){var t=this[0]||{},n=0,r=this.length;if(e===undefined)return 1===t.nodeType?t.innerHTML.replace(Oe,""):undefined;if("string"==typeof e&&!Be.test(e)&&(y.htmlSerialize||!Re.test(e))&&(y.leadingWhitespace||!ve.test(e))&&!x[(me.exec(e)||["",""])[1].toLowerCase()]){e=C.htmlPrefilter(e);try{for(;n")).appendTo(t.documentElement))[0].contentWindow||Ge[0].contentDocument).document).write(),t.close(),n=Qe(e,t),Ge.detach()),Ke[e]=n),n}var n,et,tt,nt,rt,it,ot,a,at=/^margin/,st=new RegExp("^("+e+")(?!px)[a-z%]+$","i"),ut=function(e,t,n,r){var i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,r||[]),t)e.style[i]=o[i];return r},lt=g.documentElement;function t(){var e,t=g.documentElement;t.appendChild(ot),a.style.cssText="-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",n=tt=it=!1,et=rt=!0,T.getComputedStyle&&(e=T.getComputedStyle(a),n="1%"!==(e||{}).top,it="2px"===(e||{}).marginLeft,tt="4px"===(e||{width:"4px"}).width,a.style.marginRight="50%",et="4px"===(e||{marginRight:"4px"}).marginRight,(e=a.appendChild(g.createElement("div"))).style.cssText=a.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",a.style.width="1px",rt=!parseFloat((T.getComputedStyle(e)||{}).marginRight),a.removeChild(e)),a.style.display="none",(nt=0===a.getClientRects().length)&&(a.style.display="",a.innerHTML="
          t
          ",a.childNodes[0].style.borderCollapse="separate",(e=a.getElementsByTagName("td"))[0].style.cssText="margin:0;border:0;padding:0;display:none",(nt=0===e[0].offsetHeight)&&(e[0].style.display="",e[1].style.display="none",nt=0===e[0].offsetHeight)),t.removeChild(ot)}ot=g.createElement("div"),(a=g.createElement("div")).style&&(a.style.cssText="float:left;opacity:.5",y.opacity="0.5"===a.style.opacity,y.cssFloat=!!a.style.cssFloat,a.style.backgroundClip="content-box",a.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===a.style.backgroundClip,(ot=g.createElement("div")).style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.innerHTML="",ot.appendChild(a),y.boxSizing=""===a.style.boxSizing||""===a.style.MozBoxSizing||""===a.style.WebkitBoxSizing,C.extend(y,{reliableHiddenOffsets:function(){return null==n&&t(),nt},boxSizingReliable:function(){return null==n&&t(),tt},pixelMarginRight:function(){return null==n&&t(),et},pixelPosition:function(){return null==n&&t(),n},reliableMarginRight:function(){return null==n&&t(),rt},reliableMarginLeft:function(){return null==n&&t(),it}}));var l,p,ct=/^(top|right|bottom|left)$/;function ft(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}T.getComputedStyle?(l=function(e){var t=e.ownerDocument.defaultView;return(t=t&&t.opener?t:T).getComputedStyle(e)},p=function(e,t,n){var r,i,o=e.style;return""!==(i=(n=n||l(e))?n.getPropertyValue(t)||n[t]:undefined)&&i!==undefined||C.contains(e.ownerDocument,e)||(i=C.style(e,t)),n&&!y.pixelMarginRight()&&st.test(i)&&at.test(t)&&(e=o.width,t=o.minWidth,r=o.maxWidth,o.minWidth=o.maxWidth=o.width=i,i=n.width,o.width=e,o.minWidth=t,o.maxWidth=r),i===undefined?i:i+""}):lt.currentStyle&&(l=function(e){return e.currentStyle},p=function(e,t,n){var r,i,o,a=e.style;return null==(n=(n=n||l(e))?n[t]:undefined)&&a&&a[t]&&(n=a[t]),st.test(n)&&!ct.test(t)&&(r=a.left,(o=(i=e.runtimeStyle)&&i.left)&&(i.left=e.currentStyle.left),a.left="fontSize"===t?"1em":n,n=a.pixelLeft+"px",a.left=r,o&&(i.left=o)),n===undefined?n:n+""||"auto"});var dt=/alpha\([^)]*\)/i,pt=/opacity\s*=\s*([^)]*)/i,ht=/^(none|table(?!-c[ea]).+)/,gt=new RegExp("^("+e+")(.*)$","i"),mt={position:"absolute",visibility:"hidden",display:"block"},yt={letterSpacing:"0",fontWeight:"400"},vt=["Webkit","O","Moz","ms"],xt=g.createElement("div").style;function bt(e){if(e in xt)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=vt.length;n--;)if((e=vt[n]+t)in xt)return e}function wt(e,t){for(var n,r,i,o=[],a=0,s=e.length;a
          a",F=q.getElementsByTagName("a")[0],k.setAttribute("type","checkbox"),q.appendChild(k),(F=q.getElementsByTagName("a")[0]).style.cssText="top:1px",y.getSetAttribute="t"!==q.className,y.style=/top/.test(F.getAttribute("style")),y.hrefNormalized="/a"===F.getAttribute("href"),y.checkOn=!!k.value,y.optSelected=e.selected,y.enctype=!!g.createElement("form").enctype,S.disabled=!0,y.optDisabled=!e.disabled,(k=g.createElement("input")).setAttribute("value",""),y.input=""===k.getAttribute("value"),k.value="t",k.setAttribute("type","radio"),y.radioValue="t"===k.value;var Lt=/\r/g,Ht=/[\x20\t\r\n\f]+/g;C.fn.extend({val:function(t){var n,e,r,i=this[0];return arguments.length?(r=C.isFunction(t),this.each(function(e){1===this.nodeType&&(null==(e=r?t.call(this,e,C(this).val()):t)?e="":"number"==typeof e?e+="":C.isArray(e)&&(e=C.map(e,function(e){return null==e?"":e+""})),(n=C.valHooks[this.type]||C.valHooks[this.nodeName.toLowerCase()])&&"set"in n&&n.set(this,e,"value")!==undefined||(this.value=e))})):i?(n=C.valHooks[i.type]||C.valHooks[i.nodeName.toLowerCase()])&&"get"in n&&(e=n.get(i,"value"))!==undefined?e:"string"==typeof(e=i.value)?e.replace(Lt,""):null==e?"":e:void 0}}),C.extend({valHooks:{option:{get:function(e){var t=C.find.attr(e,"value");return null!=t?t:C.trim(C.text(e)).replace(Ht," ")}},select:{get:function(e){for(var t,n=e.options,r=e.selectedIndex,i="select-one"===e.type||r<0,o=i?null:[],a=i?r+1:n.length,s=r<0?a:i?r:0;s").append(C.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){C.fn[t]=function(e){return this.on(t,e)}}),C.expr.filters.animated=function(t){return C.grep(C.timers,function(e){return t===e.elem}).length},C.offset={setOffset:function(e,t,n){var r,i,o,a,s=C.css(e,"position"),u=C(e),l={};"static"===s&&(e.style.position="relative"),o=u.offset(),r=C.css(e,"top"),a=C.css(e,"left"),s=("absolute"===s||"fixed"===s)&&-1'+(s?a.title[0]:a.title)+"
          ":"";return a.zIndex=o,t([a.shade?'
          ':"",'
          '+(e&&2!=a.type?"":s)+"'+(n=["layui-icon-tips","layui-icon-success","layui-icon-error","layui-icon-question","layui-icon-lock","layui-icon-face-cry","layui-icon-face-smile"],o="layui-anim layui-anim-rotate layui-anim-loop",0==a.type&&-1!==a.icon?'':3==a.type?(i=["layui-icon-loading","layui-icon-loading-1"],2==a.icon?'
          ':''):"")+((1!=a.type||!e)&&a.content||"")+'
          '+(n=[],l&&(n.push(''),n.push('')),a.closeBtn&&n.push(''),n.join(""))+"
          "+(a.btn?function(){var e="";"string"==typeof a.btn&&(a.btn=[a.btn]);for(var t=0,i=a.btn.length;t'+a.btn[t]+"";return'
          '+e+"
          "}():"")+(a.resize?'':"")+""],s,m('
          ')),this},t.pt.creat=function(){var e,t,i,n,a,o=this,s=o.config,l=o.index,r="object"==typeof(f=s.content),c=m("body");if(s.id&&m("."+y[0]).find("#"+s.id)[0])return e=m("#"+s.id).closest("."+y[0]),t=e.attr("times"),i=e.data("config"),n=m("#"+y.SHADE+t),void("min"===(e.data("maxminStatus")||{})?h.restore(t):i.hideOnClose&&(n.show(),e.show()));switch(s.removeFocus&&document.activeElement.blur(),"string"==typeof s.area&&(s.area="auto"===s.area?["",""]:[s.area,""]),s.shift&&(s.anim=s.shift),6==h.ie&&(s.fixed=!1),s.type){case 0:s.btn="btn"in s?s.btn:u.btn[0],h.closeAll("dialog");break;case 2:var f=s.content=r?s.content:[s.content||"","auto"];s.content='';break;case 3:delete s.title,delete s.closeBtn,-1===s.icon&&s.icon,h.closeAll("loading");break;case 4:r||(s.content=[s.content,"body"]),s.follow=s.content[1],s.content=s.content[0]+'',delete s.title,s.tips="object"==typeof s.tips?s.tips:[s.tips,!0],s.tipsMore||h.closeAll("tips")}o.vessel(r,function(e,t,i){c.append(e[0]),r?2==s.type||4==s.type?m("body").append(e[1]):f.parents("."+y[0])[0]||(f.data("display",f.css("display")).show().addClass("layui-layer-wrap").wrap(e[1]),m("#"+y[0]+l).find("."+y[5]).before(t)):c.append(e[1]),m("#"+y.MOVE)[0]||c.append(u.moveElem=i),o.layero=m("#"+y[0]+l),o.shadeo=m("#"+y.SHADE+l),s.scrollbar||y.html.css("overflow","hidden").attr("layer-full",l)}).auto(l),o.shadeo.css({"background-color":s.shade[1]||"#000",opacity:s.shade[0]||s.shade}),2==s.type&&6==h.ie&&o.layero.find("iframe").attr("src",f[0]),4==s.type?o.tips():(o.offset(),parseInt(u.getStyle(document.getElementById(y.MOVE),"z-index"))||(o.layero.css("visibility","hidden"),h.ready(function(){o.offset(),o.layero.css("visibility","visible")}))),s.fixed&&!u.events.resize[o.index]&&(u.events.resize[o.index]=function(){o.resize()},d.on("resize",u.events.resize[o.index])),s.time<=0||setTimeout(function(){h.close(o.index)},s.time),o.move().callback(),y.anim[s.anim]&&(a="layer-anim "+y.anim[s.anim],o.layero.addClass(a).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){m(this).removeClass(a)})),o.layero.data("config",s)},t.pt.resize=function(){var e=this,t=e.config;e.offset(),(/^\d+%$/.test(t.area[0])||/^\d+%$/.test(t.area[1]))&&e.auto(e.index),4==t.type&&e.tips()},t.pt.auto=function(e){var t=this.config,i=m("#"+y[0]+e),n=(""===t.area[0]&&0t.maxWidth&&i.width(t.maxWidth)),[i.innerWidth(),i.innerHeight()]),a=i.find(y[1]).outerHeight()||0,o=i.find("."+y[6]).outerHeight()||0,e=function(e){(e=i.find(e)).height(n[1]-a-o-2*(0|parseFloat(e.css("padding-top"))))};return 2===t.type?e("iframe"):""===t.area[1]?0t.maxHeight?(n[1]=t.maxHeight,e("."+y[5])):t.fixed&&n[1]>=d.height()&&(n[1]=d.height(),e("."+y[5])):e("."+y[5]),this},t.pt.offset=function(){var e=this,t=e.config,i=e.layero,n=[i.outerWidth(),i.outerHeight()],a="object"==typeof t.offset;e.offsetTop=(d.height()-n[1])/2,e.offsetLeft=(d.width()-n[0])/2,a?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=d.width()-n[0]:"b"===t.offset?e.offsetTop=d.height()-n[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=d.height()-n[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=d.width()-n[0]):"rb"===t.offset?(e.offsetTop=d.height()-n[1],e.offsetLeft=d.width()-n[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?d.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?d.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=d.scrollTop(),e.offsetLeft+=d.scrollLeft()),"min"===i.data("maxminStatus")&&(e.offsetTop=d.height()-(i.find(y[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},t.pt.tips=function(){var e=this.config,t=this.layero,i=[t.outerWidth(),t.outerHeight()],n=m(e.follow),a={width:(n=n[0]?n:m("body")).outerWidth(),height:n.outerHeight(),top:n.offset().top,left:n.offset().left},o=t.find(".layui-layer-TipsG"),n=e.tips[0];e.tips[1]||o.remove(),a.autoLeft=function(){0d.width()&&(o=d.width()-180-(u.minStackArr.edgeIndex=u.minStackArr.edgeIndex||0,u.minStackArr.edgeIndex+=3))<0&&(o=0),t.minStack&&(l.left=o,l.top=d.height()-n,a||u.minStackIndex++,r.attr("minLeft",o)),r.attr("position",s),h.style(e,l,!0),i.hide(),"page"===r.attr("type")&&r.find(y[4]).hide(),u.rescollbar(e),c.hide())},h.restore=function(e){var t=m("#"+y[0]+e),i=m("#"+y.SHADE+e),n=t.attr("area").split(","),a=t.attr("type");t.removeData("maxminStatus"),h.style(e,{width:n[0],height:n[1],top:parseFloat(n[2]),left:parseFloat(n[3]),position:t.attr("position"),overflow:"visible"},!0),t.find(".layui-layer-max").removeClass("layui-layer-maxmin"),t.find(".layui-layer-min").show(),"page"===a&&t.find(y[4]).show(),u.rescollbar(e),i.show()},h.full=function(t){var i=m("#"+y[0]+t),e=i.data("maxminStatus");"max"!==e&&("min"===e&&h.restore(t),i.data("maxminStatus","max"),u.record(i),y.html.attr("layer-full")||y.html.css("overflow","hidden").attr("layer-full",t),clearTimeout(void 0),setTimeout(function(){var e="fixed"===i.css("position");h.style(t,{top:e?0:d.scrollTop(),left:e?0:d.scrollLeft(),width:"100%",height:"100%"},!0),i.find(".layui-layer-min").hide()},100))},h.title=function(e,t){m("#"+y[0]+(t||h.index)).find(y[1]).html(e)},h.close=function(o,s){var l,e,r=(t=m("."+y[0]).find("#"+o).closest("."+y[0]))[0]?(o=t.attr("times"),t):m("#"+y[0]+o),c=r.attr("type"),t=r.data("config")||{},f=t.id&&t.hideOnClose;r[0]&&(l={slideDown:"layer-anim-slide-down-out",slideLeft:"layer-anim-slide-left-out",slideUp:"layer-anim-slide-up-out",slideRight:"layer-anim-slide-right-out"}[t.anim]||"layer-anim-close",e=function(){var e="layui-layer-wrap";if(f)return r.removeClass("layer-anim "+l),r.hide();if(c===u.type[1]&&"object"===r.attr("conType")){r.children(":not(."+y[5]+")").remove();for(var t=r.find("."+e),i=0;i<2;i++)t.unwrap();t.css("display",t.data("display")).removeClass(e)}else{if(c===u.type[2])try{var n=m("#"+y[4]+o)[0];n.contentWindow.document.write(""),n.contentWindow.close(),r.find("."+y[5])[0].removeChild(n)}catch(a){}r[0].innerHTML="",r.remove()}"function"==typeof u.end[o]&&u.end[o](),delete u.end[o],"function"==typeof s&&s(),u.events.resize[o]&&(d.off("resize",u.events.resize[o]),delete u.events.resize[o])},m("#"+y.SHADE+o)[f?"hide":"remove"](),t.isOutAnim&&r.addClass("layer-anim "+l),6==h.ie&&u.reselect(),u.rescollbar(o),"string"==typeof r.attr("minLeft")&&(u.minStackIndex--,u.minStackArr.push(r.attr("minLeft"))),h.ie&&h.ie<10||!t.isOutAnim?e():setTimeout(function(){e()},200))},h.closeAll=function(n,a){"function"==typeof n&&(a=n,n=null);var o=m("."+y[0]);m.each(o,function(e){var t=m(this),i=n?t.attr("type")===n:1;i&&h.close(t.attr("times"),e===o.length-1?a:null)}),0===o.length&&"function"==typeof a&&a()},h.closeLast=function(e){h.close(m(".layui-layer-"+(e=e||"page")+":last").attr("times"))},h.cache||{}),g=function(e){return i.skin?" "+i.skin+" "+i.skin+"-"+e:""};h.prompt=function(i,n){var e="",t="";"function"==typeof(i=i||{})&&(n=i),i.area&&(e='style="width: '+(o=i.area)[0]+"; height: "+o[1]+';"',delete i.area),i.placeholder&&(t=' placeholder="'+i.placeholder+'"');var a,o=2==i.formType?'":'",s=i.success;return delete i.success,h.open(m.extend({type:1,btn:["确定","取消"],content:o,skin:"layui-layer-prompt"+g("prompt"),maxWidth:d.width(),success:function(e){(a=e.find(".layui-layer-input")).val(i.value||"").focus(),"function"==typeof s&&s(e)},resize:!1,yes:function(e){var t=a.val();t.length>(i.maxlength||500)?h.tips("最多输入"+(i.maxlength||500)+"个字数",a,{tips:1}):n&&n(t,e,a)}},i))},h.tab=function(n){var a=(n=n||{}).tab||{},o="layui-this",s=n.success;return delete n.success,h.open(m.extend({type:1,skin:"layui-layer-tab"+g("tab"),resize:!1,title:function(){var e=a.length,t=1,i="";if(0'+a[0].title+"";t"+a[t].title+"";return i}(),content:'
            '+function(){var e=a.length,t=1,i="";if(0'+(a[0].content||"no content")+"";t'+(a[t].content||"no content")+"";return i}()+"
          ",success:function(e){var t=e.find(".layui-layer-title").children(),i=e.find(".layui-layer-tabmain").children();t.on("mousedown",function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0;var e=m(this),t=e.index();e.addClass(o).siblings().removeClass(o),i.eq(t).show().siblings().hide(),"function"==typeof n.change&&n.change(t)}),"function"==typeof s&&s(e)}},n))},h.photos=function(n,e,a){var o={};if((n=n||{}).photos){var t=!("string"==typeof n.photos||n.photos instanceof m),i=t?n.photos:{},s=i.data||[],l=i.start||0,r=(o.imgIndex=1+(0|l),n.img=n.img||"img",n.success);if(delete n.success,t){if(0===s.length)return h.msg("没有图片")}else{var c=m(n.photos),f=function(){s=[],c.find(n.img).each(function(e){var t=m(this);t.attr("layer-index",e),s.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("lay-src")||t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(f(),0===s.length)return;if(e||c.on("click",n.img,function(){f();var e=m(this).attr("layer-index");h.photos(m.extend(n,{photos:{start:e,data:s,tab:n.tab},full:n.full}),!0)}),!e)return}o.imgprev=function(e){o.imgIndex--,o.imgIndex<1&&(o.imgIndex=s.length),o.tabimg(e)},o.imgnext=function(e,t){o.imgIndex++,o.imgIndex>s.length&&(o.imgIndex=1,t)||o.tabimg(e)},o.keyup=function(e){var t;o.end||(t=e.keyCode,e.preventDefault(),37===t?o.imgprev(!0):39===t?o.imgnext(!0):27===t&&h.close(o.index))},o.tabimg=function(e){if(!(s.length<=1))return i.start=o.imgIndex-1,h.close(o.index),h.photos(n,!0,e)},o.event=function(){o.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),o.imgprev(!0)}),o.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),o.imgnext(!0)}),m(document).on("keyup",o.keyup)},o.loadi=h.load(1,{shade:!("shade"in n)&&.9,scrollbar:!1});var t=s[l].src,d=function(e){h.close(o.loadi);var t,i=s[l].alt||"";a&&(n.anim=-1),o.index=h.open(m.extend({type:1,id:"layui-layer-photos",area:(e=[e.width,e.height],t=[m(p).width()-100,m(p).height()-100],!n.full&&(e[0]>t[0]||e[1]>t[1])&&((t=[e[0]/t[0],e[1]/t[1]])[1]'+i+''+(t=['
          '],1','','',"
          "].join("")),n.hideFooter||t.push(['
          ','
          ',"

          "+i+"

          ",""+o.imgIndex+" / "+s.length+"",'\u67e5\u770b\u539f\u56fe',"
          ","
          "].join("")),t.push(""),t.join(""))+"",success:function(e,t){o.bigimg=e.find(".layui-layer-phimg"),o.imgsee=e.find(".layui-layer-imgbar"),o.event(e),n.tab&&n.tab(s[l],e),"function"==typeof r&&r(e)},end:function(){o.end=!0,m(document).off("keyup",o.keyup)}},n))},u=function(){h.close(o.loadi),h.msg("当前图片地址异常
          是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){1").addClass(a));layui.each(i.bars,function(e,t){var n=s('
        • ');n.addClass(t.icon).attr({"lay-type":t.type,style:t.style||"background-color: "+i.bgcolor}).html(t.content),n.on("click",function(){var e=s(this).attr("lay-type");"top"===e&&("body"===i.target?s("html,body"):c).animate({scrollTop:0},i.duration),"function"==typeof i.click&&i.click.call(this,e)}),"object"===layui.type(i.on)&&layui.each(i.on,function(e,t){n.on(e,function(){var e=s(this).attr("lay-type");"function"==typeof t&&t.call(this,e)})}),"top"===t.type&&(n.addClass("layui-fixbar-top"),o=n),u.append(n)}),l.find("."+a).remove(),"object"==typeof i.css&&u.css(i.css),l.append(u),o&&(t=function t(){return c.scrollTop()>=i.margin?e||(o.show(),e=1):e&&(o.hide(),e=0),t}()),c.on("scroll",function(){t&&(clearTimeout(n),n=setTimeout(function(){t()},100))})},countdown:function(e,t,n){var i=this,o="function"==typeof t,a=new Date(e).getTime(),r=new Date(!t||o?(new Date).getTime():t).getTime(),a=a-r,l=[Math.floor(a/864e5),Math.floor(a/36e5)%24,Math.floor(a/6e4)%60,Math.floor(a/1e3)%60],o=(o&&(n=t),setTimeout(function(){i.countdown(e,r+1e3,n)},1e3));return n&&n(0]|&(?=#[a-zA-Z0-9]+)/g.test(e+="")?e.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):e},unescape:function(e){return e!==undefined&&null!==e||(e=""),(e+="").replace(/\&/g,"&").replace(/\</g,"<").replace(/\>/g,">").replace(/\'/g,"'").replace(/\"/g,'"')},openWin:function(e){var t=(e=e||{}).window||window.open(e.url||"",e.target,e.specs);e.url||(t.document.open("text/html","replace"),t.document.write(e.content||""),t.document.close())},toVisibleArea:function(e){var t,n,i,o,a,r,l,c;(e=s.extend({margin:160,duration:200,type:"y"},e)).scrollElem[0]&&e.thisElem[0]&&(t=e.scrollElem,l=e.thisElem,i=(a="y"===e.type)?"top":"left",o=t[n=a?"scrollTop":"scrollLeft"](),a=t[a?"height":"width"](),r=t.offset()[i],c={},((l=l.offset()[i]-r)>a-e.margin||l."+h,k=function(e){var i=this;i.index=++p.index,i.config=s.extend({},i.config,p.config,e),i.init()};k.prototype.config={trigger:"click",content:"",className:"",style:"",show:!1,isAllowSpread:!0,isSpreadItem:!0,data:[],delay:300,shade:0},k.prototype.reload=function(e,i){var t=this;t.config=s.extend({},t.config,e),t.init(!0,i)},k.prototype.init=function(e,i){var t,n=this,a=n.config,l=s(a.elem);return 1');return 0No data
        • '),e},u=function(r,e){return layui.each(e,function(e,i){var t,n=i.child&&0",(t="href"in i?''+l+"":l,n?'
          '+t+("parent"===o?'':"group"===o&&d.isAllowSpread?'':"")+"
          ":'
          '+t+"
          "),""].join(""))).data("item",i),n&&(a=s('
          '),t=s("
            "),"parent"===o?(a.append(u(t,i.child)),l.append(a)):l.append(u(t,i.child))),r.append(l))}),r},a=['
            ',"
            "].join("");!(e="contextmenu"!==d.trigger&&!lay.isTopElem(d.elem[0])?e:!0)&&d.elem.data(m+"_opened")||(l.elemView=s("."+f+'[lay-id="'+d.id+'"]'),"reloadData"===i&&l.elemView.length?l.elemView.html(d.content||n()):(l.elemView=s(a),l.elemView.append(d.content||n()),d.className&&l.elemView.addClass(d.className),d.style&&l.elemView.attr("style",d.style),p.thisId=d.id,l.remove(),t.append(l.elemView),d.elem.data(m+"_opened",!0),e=d.shade?'
            ':"",l.elemView.before(e),"mouseenter"===d.trigger&&l.elemView.on("mouseenter",function(){clearTimeout(y.timer)}).on("mouseleave",function(){l.delayRemove()})),l.position(),(y.prevElem=l.elemView).data("prevElem",d.elem),l.elemView.find(".layui-menu").on(o,function(e){layui.stope(e)}),l.elemView.find(".layui-menu li").on("click",function(e){var i=s(this),t=i.data("item")||{},n=t.child&&0n.width()&&(t.addClass(V),(i=t[0].getBoundingClientRect()).left<0&&t.removeClass(V)),i.bottom>n.height()&&t.eq(0).css("margin-top",-(i.bottom-n.height()+5)))}).on("mouseleave",t,function(e){var i=s(this).children("."+C);i.removeClass(V),i.css("margin-top",0)}),p.close=function(e){e=y.getThis(e);return e?(e.remove(),y.call(e)):this},p.reload=function(e,i,t){e=y.getThis(e);return e?(e.reload(i,t),y.call(e)):this},p.reloadData=function(){var t=s.extend([],arguments),n=(t[2]="reloadData",new RegExp("^("+["data","templet","content"].join("|")+")$"));return layui.each(t[1],function(e,i){n.test(e)||delete t[1][e]}),p.reload.apply(null,t)},p.render=function(e){e=new k(e);return y.call(e)},e(r,p)});layui.define(["jquery","lay"],function(e){"use strict";var g=layui.$,c=layui.lay,m={config:{},index:layui.slider?layui.slider.index+1e4:0,set:function(e){var i=this;return i.config=g.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,t,e,i)}},t="slider",v="layui-disabled",x="layui-slider-bar",b="layui-slider-wrap",T="layui-slider-wrap-btn",w="layui-slider-tips",M="layui-slider-input-txt",L="layui-slider-hover",i=function(e){var i=this;i.index=++m.index,i.config=g.extend({},i.config,m.config,e),i.render()};i.prototype.config={type:"default",min:0,max:100,value:0,step:1,showstep:!1,tips:!0,input:!1,range:!1,height:200,disabled:!1,theme:"#16baaa"},i.prototype.render=function(){var a=this,n=a.config,e=g(n.elem);if(1n.min?e:n.min,n.value[1]=i>n.min?i:n.min,n.value[0]=n.value[0]>n.max?n.max:n.value[0],n.value[1]=n.value[1]>n.max?n.max:n.value[1],i=Math.floor((n.value[0]-n.min)/(n.max-n.min)*100),t=(s=Math.floor((n.value[1]-n.min)/(n.max-n.min)*100))-i+"%",i+="%",s+="%"):("object"==typeof n.value&&(n.value=Math.min.apply(null,n.value)),n.valuen.max&&(n.value=n.max),t=Math.floor((n.value-n.min)/(n.max-n.min)*100)+"%");var l,e=n.disabled?"#c2c2c2":n.theme,i='
            '+(n.tips?'
            ':"")+'
            '+(n.range?'
            ':"")+"
            ",t=g(n.elem),s=t.next(".layui-slider");if(s[0]&&s.remove(),a.elemTemp=g(i),n.range?(a.elemTemp.find("."+b).eq(0).data("value",n.value[0]),a.elemTemp.find("."+b).eq(1).data("value",n.value[1])):a.elemTemp.find("."+b).data("value",n.value),t.html(a.elemTemp),"vertical"===n.type&&a.elemTemp.height(n.height+"px"),n.showstep){for(var o=(n.max-n.min)/n.step,r="",u=1;u<1+o;u++){var d=100*u/o;d<100&&(r+='
            ')}a.elemTemp.append(r)}n.input&&!n.range&&(e=g('
            '),t.css("position","relative"),t.append(e),t.find("."+M).children("input").val(n.value),"vertical"===n.type?e.css({left:0,top:-48}):a.elemTemp.css("margin-right",e.outerWidth()+15)),n.disabled?(a.elemTemp.addClass(v),a.elemTemp.find("."+T).addClass(v)):a.slide(),a.elemTemp.find("."+T).on("mouseover",function(){var e="vertical"===n.type?n.height:a.elemTemp[0].offsetWidth,i=a.elemTemp.find("."+b),t=("vertical"===n.type?e-g(this).parent()[0].offsetTop-i.height():g(this).parent()[0].offsetLeft)/e*100,i=g(this).parent().data("value"),e=n.setTips?n.setTips(i):i;a.elemTemp.find("."+w).html(e),clearTimeout(l),l=setTimeout(function(){"vertical"===n.type?a.elemTemp.find("."+w).css({bottom:t+"%","margin-bottom":"20px",display:"inline-block"}):a.elemTemp.find("."+w).css({left:t+"%",display:"inline-block"})},300)}).on("mouseout",function(){clearTimeout(l),a.elemTemp.find("."+w).css("display","none")})},i.prototype.slide=function(e,i,t){var o=this,r=o.config,u=o.elemTemp,d=function(){return"vertical"===r.type?r.height:u[0].offsetWidth},c=u.find("."+b),m=u.next(".layui-slider-input"),v=m.children("."+M).children("input").val(),p=100/((r.max-r.min)/Math.ceil(r.step)),f=function(e,i,t){e=(e=100<(e=100a[1]&&a.reverse(),o.value=r.range?a:l,r.change&&r.change(o.value),"done"===t&&r.done&&r.done(o.value)},h=function(e){var i=e/d()*100/p,t=Math.round(i)*p;return t=e==d()?Math.ceil(i)*p:t},y=g(['
            d()?d():i)/d()*100/p;f(i,l),s.addClass(L),u.find("."+w).show(),e.preventDefault()},i=function(){s.removeClass(L),u.find("."+w).hide()},t=function(){i&&i(),y.remove(),r.done&&r.done(o.value)},g("#LAY-slider-moving")[0]||g("body").append(y),y.on("mousemove",e),y.on("mouseup",t).on("mouseleave",t)})}),u.on("click",function(e){var i=g("."+T),t=g(this);!i.is(event.target)&&0===i.has(event.target).length&&i.length&&(t=(i=(i=(i="vertical"===r.type?d()-e.clientY+t.offset().top-g(window).scrollTop():e.clientX-t.offset().left-g(window).scrollLeft())<0?0:i)>d()?d():i)/d()*100/p,i=r.range?"vertical"===r.type?Math.abs(i-parseInt(g(c[0]).css("bottom")))>Math.abs(i-parseInt(g(c[1]).css("bottom")))?1:0:Math.abs(i-c[0].offsetLeft)>Math.abs(i-c[1].offsetLeft)?1:0:0,f(t,i,"done"),e.preventDefault())}),m.children(".layui-slider-input-btn").children("i").each(function(i){g(this).on("click",function(){v=m.children("."+M).children("input").val();var e=((v=1==i?v-r.stepr.max?r.max:Number(v)+r.step)-r.min)/(r.max-r.min)*100/p;f(e,0,"done")})});var a=function(){var e=this.value,e=(e=(e=(e=isNaN(e)?0:e)r.max?r.max:e,((this.value=e)-r.min)/(r.max-r.min)*100/p);f(e,0,"done")};m.children("."+M).children("input").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),a.call(this))}).on("change",a)},i.prototype.events=function(){this.config},m.render=function(e){e=new i(e);return function(){var t=this,a=t.config;return{setValue:function(e,i){return e=(e=e>a.max?a.max:e)',"",'','',"","","
            "].join("")),r=i.elem=m(i.elem);i.size&&o.addClass("layui-colorpicker-"+i.size),r.addClass("layui-inline").html(e.elemColorBox=o),i.id="id"in i?i.id:r.attr("id")||e.index,e.color=e.elemColorBox.find("."+C)[0].style.background,e.events()},d.prototype.renderPicker=function(){var o,e=this,i=e.config,r=e.elemColorBox[0],t=e.elemPicker=m(['
            ','
            ','
            ','
            ','
            ','
            ',"
            ",'
            ','
            ',"
            ","
            ",'
            ','
            ','
            ',"
            ","
            ",i.predefine?(o=['
            '],layui.each(i.colors,function(e,i){o.push(['
            ','
            ',"
            "].join(""))}),o.push("
            "),o.join("")):"",'
            ','
            ','',"
            ",'
            ','','',"","
            "].join(""));e.elemColorBox.find("."+C)[0];m(a)[0]&&m(a).data("index")==e.index?e.removePicker(d.thisElemInd):(e.removePicker(d.thisElemInd),m("body").append(t)),n.thisId=i.id,d.thisElemInd=e.index,d.thisColor=r.style.background,e.position(),e.pickerEvents()},d.prototype.removePicker=function(e){var i=this.config,e=m("#layui-colorpicker"+(e||this.index));return e[0]&&(e.remove(),delete n.thisId,"function"==typeof i.close&&i.close(this.color)),this},d.prototype.position=function(){var e=this,i=e.config;return t.position(e.bindElem||e.elemColorBox[0],e.elemPicker[0],{position:i.position,align:"center"}),e},d.prototype.val=function(){var e,i=this,o=(i.config,i.elemColorBox.find("."+C)),r=i.elemPicker.find("."+M),t=o[0].style.backgroundColor;t?(e=Y(L(t)),o=o.attr("lay-type"),i.select(e.h,e.s,e.b),"torgb"===o?r.find("input").val(t):"rgba"===o?(o=L(t),3===(t.match(/[0-9]{1,3}/g)||[]).length?(r.find("input").val("rgba("+o.r+", "+o.g+", "+o.b+", 1)"),i.elemPicker.find("."+T).css("left",280)):(r.find("input").val(t),t=280*t.slice(t.lastIndexOf(",")+1,t.length-1),i.elemPicker.find("."+T).css("left",t)),i.elemPicker.find("."+D)[0].style.background="linear-gradient(to right, rgba("+o.r+", "+o.g+", "+o.b+", 0), rgb("+o.r+", "+o.g+", "+o.b+"))"):r.find("input").val("#"+F(e))):(i.select(0,100,100),r.find("input").val(""),i.elemPicker.find("."+D)[0].style.background="",i.elemPicker.find("."+T).css("left",280))},d.prototype.side=function(){var n=this,l=n.config,c=n.elemColorBox.find("."+C),a=c.attr("lay-type"),s=n.elemPicker.find(".layui-colorpicker-side"),e=n.elemPicker.find("."+B),d=n.elemPicker.find("."+I),r=n.elemPicker.find("."+E),f=n.elemPicker.find("."+D),u=n.elemPicker.find("."+T),g=e[0].offsetTop/180*360,p=100-(r[0].offsetTop+3)/180*100,h=(r[0].offsetLeft+3)/260*100,v=Math.round(u[0].offsetLeft/280*100)/100,b=n.elemColorBox.find("."+w),i=n.elemPicker.find(".layui-colorpicker-pre").children("div"),y=function(e,i,o,r){n.select(e,i,o);var t=j({h:e,s:i,b:o}),e=F({h:e,s:i,b:o}),i=n.elemPicker.find("."+M).find("input");b.addClass(x).removeClass(P),c[0].style.background="rgb("+t.r+", "+t.g+", "+t.b+")","torgb"===a?i.val("rgb("+t.r+", "+t.g+", "+t.b+")"):"rgba"===a?(u.css("left",280*r),i.val("rgba("+t.r+", "+t.g+", "+t.b+", "+r+")"),c[0].style.background="rgba("+t.r+", "+t.g+", "+t.b+", "+r+")",f[0].style.background="linear-gradient(to right, rgba("+t.r+", "+t.g+", "+t.b+", 0), rgb("+t.r+", "+t.g+", "+t.b+"))"):i.val("#"+e),l.change&&l.change(n.elemPicker.find("."+M).find("input").val())},o=m(['
            '].join("")),k=function(e){m("#LAY-colorpicker-moving")[0]||m("body").append(o),o.on("mousemove",e),o.on("mouseup",function(){o.remove()}).on("mouseleave",function(){o.remove()})};e.on("mousedown",function(e){var r=this.offsetTop,t=e.clientY;k(function(e){var i=r+(e.clientY-t),o=s[0].offsetHeight,o=(i=o<(i=i<0?0:i)?o:i)/180*360;y(g=o,h,p,v),e.preventDefault()}),e.preventDefault()}),s.on("click",function(e){var i=e.clientY-m(this).offset().top+H.scrollTop(),i=(i=(i=i<0?0:i)>this.offsetHeight?this.offsetHeight:i)/180*360;y(g=i,h,p,v),e.preventDefault()}),r.on("mousedown",function(e){var n=this.offsetTop,l=this.offsetLeft,c=e.clientY,a=e.clientX;layui.stope(e),k(function(e){var i=n+(e.clientY-c),o=l+(e.clientX-a),r=d[0].offsetHeight-3,t=d[0].offsetWidth-3,t=((o=t<(o=o<-3?-3:o)?t:o)+3)/260*100,o=100-((i=r<(i=i<-3?-3:i)?r:i)+3)/180*100;y(g,h=t,p=o,v),e.preventDefault()}),e.preventDefault()}),d.on("mousedown",function(e){var i=e.clientY-m(this).offset().top-3+H.scrollTop(),o=e.clientX-m(this).offset().left-3+H.scrollLeft(),o=((i=i<-3?-3:i)>this.offsetHeight-3&&(i=this.offsetHeight-3),((o=(o=o<-3?-3:o)>this.offsetWidth-3?this.offsetWidth-3:o)+3)/260*100),i=100-(i+3)/180*100;y(g,h=o,p=i,v),layui.stope(e),e.preventDefault(),r.trigger(e,"mousedown")}),u.on("mousedown",function(e){var r=this.offsetLeft,t=e.clientX;k(function(e){var i=r+(e.clientX-t),o=f[0].offsetWidth,o=(o<(i=i<0?0:i)&&(i=o),Math.round(i/280*100)/100);y(g,h,p,v=o),e.preventDefault()}),e.preventDefault()}),f.on("click",function(e){var i=e.clientX-m(this).offset().left,i=((i=i<0?0:i)>this.offsetWidth&&(i=this.offsetWidth),Math.round(i/280*100)/100);y(g,h,p,v=i),e.preventDefault()}),i.each(function(){m(this).on("click",function(){m(this).parent(".layui-colorpicker-pre").addClass("selected").siblings().removeClass("selected");var e=this.style.backgroundColor,i=Y(L(e)),o=e.slice(e.lastIndexOf(",")+1,e.length-1);g=i.h,h=i.s,p=i.b,3===(e.match(/[0-9]{1,3}/g)||[]).length&&(o=1),v=o,y(i.h,i.s,i.b,o)})})},d.prototype.select=function(e,i,o,r){this.config;var t=F({h:e,s:100,b:100}),e=(F({h:e,s:i,b:o}),e/360*180),o=180-o/100*180-3,i=i/100*260-3;this.elemPicker.find("."+B).css("top",e),this.elemPicker.find("."+I)[0].style.background="#"+t,this.elemPicker.find("."+E).css({top:o,left:i})},d.prototype.pickerEvents=function(){var c=this,a=c.config,s=c.elemColorBox.find("."+C),d=c.elemPicker.find("."+M+" input"),o={clear:function(e){s[0].style.background="",c.elemColorBox.find("."+w).removeClass(x).addClass(P),c.color="",a.done&&a.done(""),c.removePicker()},confirm:function(e,i){var o,r,t,n,l=d.val();if(-1>16,g:(65280&t)>>8,b:255&t},r=Y(n),s[0].style.background=o="#"+F(r),c.elemColorBox.find("."+w).removeClass(P).addClass(x)),"change"===i)return c.select(r.h,r.s,r.b,i),void(a.change&&a.change(o));c.color=l,a.done&&a.done(l),c.removePicker()}};c.elemPicker.on("click","*[colorpicker-events]",function(){var e=m(this),i=e.attr("colorpicker-events");o[i]&&o[i].call(this,e)}),d.on("keyup",function(e){var i=m(this);o.confirm.call(this,i,13===e.keyCode?null:"change")})},d.prototype.events=function(){var e=this;e.config;e.elemColorBox.on("click",function(){e.renderPicker(),m(a)[0]&&(e.val(),e.side())})},s.on(i,function(e){var i,o,r;!n.thisId||(i=l.getThis(n.thisId))&&(o=i.config,r=i.elemColorBox.find("."+C),m(e.target).hasClass(c)||m(e.target).parents("."+c)[0]||m(e.target).hasClass(a.replace(/\./g,""))||m(e.target).parents(a)[0]||i.elemPicker&&(i.color?(e=Y(L(i.color)),i.select(e.h,e.s,e.b)):i.elemColorBox.find("."+w).removeClass(x).addClass(P),r[0].style.background=i.color||"","function"==typeof o.cancel&&o.cancel(i.color),i.removePicker()))}),H.on("resize",function(){if(n.thisId){var e=l.getThis(n.thisId);if(e)return!(!e.elemPicker||!m(a)[0])&&void e.position()}}),l.that={},l.getThis=function(e){var i=l.that[e];return i||o.error(e?r+" instance with ID '"+e+"' not found":"ID argument required"),i},n.render=function(e){e=new d(e);return l.call(e)},e(r,n)});layui.define("jquery",function(t){"use strict";var u=layui.$,d=(layui.hint(),layui.device()),o="element",c="layui-this",y="layui-show",s=".layui-tab-title",i=function(){this.config={}},h=(i.prototype.set=function(t){return u.extend(!0,this.config,t),this},i.prototype.on=function(t,i){return layui.onevent.call(this,o,t,i)},i.prototype.tabAdd=function(t,i){var a,t=u(".layui-tab[lay-filter="+t+"]"),e=t.children(s),l=e.children(".layui-tab-bar"),t=t.children(".layui-tab-content"),n=""+(i.title||"unnaming")+"";return l[0]?l.before(n):e.append(n),t.append('
            '+(i.content||"")+"
            "),C.hideTabMore(!0),C.tabAuto(),this},i.prototype.tabDelete=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(s).find('>li[lay-id="'+i+'"]');return C.tabDelete(null,t),this},i.prototype.tabChange=function(t,i){t=u(".layui-tab[lay-filter="+t+"]").children(s).find('>li[lay-id="'+i+'"]');return C.tabClick.call(t[0],{liElem:t}),this},i.prototype.tab=function(a){a=a||{},e.on("click",a.headerElem,function(t){var i=u(this).index();C.tabClick.call(this,{index:i,options:a})})},i.prototype.progress=function(t,i){var a="layui-progress",t=u("."+a+"[lay-filter="+t+"]").find("."+a+"-bar"),a=t.find("."+a+"-text");return t.css("width",function(){return/^.+\/.+$/.test(i)?100*new Function("return "+i)()+"%":i}).attr("lay-percent",i),a.text(i),this},".layui-nav"),f="layui-nav-item",l="layui-nav-bar",p="layui-nav-tree",b="layui-nav-child",v="layui-nav-more",m="layui-anim layui-anim-upbit",C={tabClick:function(t){var i=(t=t||{}).options||{},a=t.liElem||u(this),e=i.headerElem?a.parent():a.parents(".layui-tab").eq(0),i=i.bodyElem?u(i.bodyElem):e.children(".layui-tab-content").children(".layui-tab-item"),l=a.find("a"),l="javascript:;"!==l.attr("href")&&"_blank"===l.attr("target"),n="string"==typeof a.attr("lay-unselect"),s=e.attr("lay-filter"),t="index"in t?t.index:a.parent().children("li").index(a);l||n||(a.addClass(c).siblings().removeClass(c),i.eq(t).addClass(y).siblings().removeClass(y)),layui.event.call(this,o,"tab("+s+")",{elem:e,index:t})},tabDelete:function(t,i){var i=i||u(this).parent(),a=i.index(),e=i.closest(".layui-tab"),l=e.children(".layui-tab-content").children(".layui-tab-item"),n=e.attr("lay-filter");i.hasClass(c)&&(i.next()[0]&&i.next().is("li")?C.tabClick.call(i.next()[0],{index:a+1}):i.prev()[0]&&i.prev().is("li")&&C.tabClick.call(i.prev()[0],null,a-1)),i.remove(),l.eq(a).remove(),setTimeout(function(){C.tabAuto()},50),layui.event.call(this,o,"tabDelete("+n+")",{elem:e,index:a})},tabAuto:function(){var e="layui-tab-bar",l="layui-tab-close",n=this;u(".layui-tab").each(function(){var t=u(this),i=t.children(".layui-tab-title"),a=(t.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),a=u('');n===window&&8!=d.ie&&C.hideTabMore(!0),t.attr("lay-allowclose")&&i.find("li").each(function(){var t,i=u(this);i.find("."+l)[0]||((t=u('')).on("click",C.tabDelete),i.append(t))}),"string"!=typeof t.attr("lay-unauto")&&(i.prop("scrollWidth")>i.outerWidth()+1?i.find("."+e)[0]||(i.append(a),t.attr("overflow",""),a.on("click",function(t){i[this.title?"removeClass":"addClass"]("layui-tab-more"),this.title=this.title?"":"\u6536\u7f29"})):(i.find("."+e).remove(),t.removeAttr("overflow")))})},hideTabMore:function(t){var i=u(".layui-tab-title");!0!==t&&"tabmore"===u(t.target).attr("lay-stope")||(i.removeClass("layui-tab-more"),i.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var t=u(this),i=t.parents(h),a=i.attr("lay-filter"),e=t.parent(),l=t.siblings("."+b),n="string"==typeof e.attr("lay-unselect");"javascript:;"!==t.attr("href")&&"_blank"===t.attr("target")||n||l[0]||(i.find("."+c).removeClass(c),e.addClass(c)),i.hasClass(p)&&(l.removeClass(m),l[0]&&(e["none"===l.css("display")?"addClass":"removeClass"](f+"ed"),"all"===i.attr("lay-shrink")&&e.siblings().removeClass(f+"ed"))),layui.event.call(this,o,"nav("+a+")",t)},collapse:function(){var t=u(this),i=t.find(".layui-colla-icon"),a=t.siblings(".layui-colla-content"),e=t.parents(".layui-collapse").eq(0),l=e.attr("lay-filter"),n="none"===a.css("display");"string"==typeof e.attr("lay-accordion")&&((e=e.children(".layui-colla-item").children("."+y)).siblings(".layui-colla-title").children(".layui-colla-icon").html(""),e.removeClass(y)),a[n?"addClass":"removeClass"](y),i.html(n?"":""),layui.event.call(this,o,"collapse("+l+")",{title:t,content:a,show:n})}},a=(i.prototype.render=i.prototype.init=function(t,i){var a=i?'[lay-filter="'+i+'"]':"",i={tab:function(){C.tabAuto.call({})},nav:function(){var s={},o={},c={},r="layui-nav-title";u(h+a).each(function(t){var i=u(this),a=u(''),e=i.find("."+f);i.find("."+l)[0]||(i.append(a),(i.hasClass(p)?e.find("dd,>."+r):e).on("mouseenter",function(){!function(t,i,a){var e,l=u(this),n=l.find("."+b);i.hasClass(p)?n[0]||(e=l.children("."+r),t.css({top:l.offset().top-i.offset().top,height:(e[0]?e:l).outerHeight(),opacity:1})):(n.addClass(m),n.hasClass("layui-nav-child-c")&&n.css({left:-(n.outerWidth()-l.width())/2}),n[0]?t.css({left:t.position().left+t.width()/2,width:0,opacity:0}):t.css({left:l.position().left+parseFloat(l.css("marginLeft")),top:l.position().top+l.height()-t.height()}),s[a]=setTimeout(function(){t.css({width:n[0]?0:l.width(),opacity:n[0]?0:1})},d.ie&&d.ie<10?0:200),clearTimeout(c[a]),"block"===n.css("display")&&clearTimeout(o[a]),o[a]=setTimeout(function(){n.addClass(y),l.find("."+v).addClass(v+"d")},300))}.call(this,a,i,t)}).on("mouseleave",function(){i.hasClass(p)?a.css({height:0,opacity:0}):(clearTimeout(o[t]),o[t]=setTimeout(function(){i.find("."+b).removeClass(y),i.find("."+v).removeClass(v+"d")},300))}),i.on("mouseleave",function(){clearTimeout(s[t]),c[t]=setTimeout(function(){i.hasClass(p)||a.css({width:0,left:a.position().left+a.width()/2,opacity:0})},200)})),e.find("a").each(function(){var t=u(this);t.parent();t.siblings("."+b)[0]&&!t.children("."+v)[0]&&t.append(''),t.off("click",C.clickThis).on("click",C.clickThis)})})},breadcrumb:function(){u(".layui-breadcrumb"+a).each(function(){var t=u(this),i="lay-separator",a=t.attr(i)||"/",e=t.find("a");e.next("span["+i+"]")[0]||(e.each(function(t){t!==e.length-1&&u(this).after(""+a+"")}),t.css("visibility","visible"))})},progress:function(){var e="layui-progress";u("."+e+a).each(function(){var t=u(this),i=t.find(".layui-progress-bar"),a=i.attr("lay-percent");i.css("width",function(){return/^.+\/.+$/.test(a)?100*new Function("return "+a)()+"%":a}),t.attr("lay-showpercent")&&setTimeout(function(){i.html(''+a+"")},350)})},collapse:function(){u(".layui-collapse"+a).each(function(){u(this).find(".layui-colla-item").each(function(){var t=u(this),i=t.find(".layui-colla-title"),t="none"===t.find(".layui-colla-content").css("display");i.find(".layui-colla-icon").remove(),i.append(''+(t?"":"")+""),i.off("click",C.collapse).on("click",C.collapse)})})}};return i[t]?i[t]():layui.each(i,function(t,i){i()})},new i),e=u(document);u(function(){a.render()}),e.on("click",".layui-tab-title li",C.tabClick),e.on("click",C.hideTabMore),u(window).on("resize",C.tabAuto),t(o,a)});layui.define(["lay","layer"],function(e){"use strict";var y=layui.$,t=layui.layer,F=layui.device(),i={config:{},set:function(e){var t=this;return t.config=y.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,n,e,t)}},n="upload",a="layui-upload-file",o="layui-upload-form",b="layui-upload-iframe",x="layui-upload-choose",w=function(e){var t=this;t.config=y.extend({},t.config,i.config,e),t.render()};w.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",force:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},w.prototype.render=function(e){var t=this;(e=t.config).elem=y(e.elem),e.bindAction=y(e.bindAction),t.file(),t.events()},w.prototype.file=function(){var e=this,t=e.config,i=e.elemFile=y(['"].join("")),n=t.elem.next();(n.hasClass(a)||n.hasClass(o))&&n.remove(),F.ie&&F.ie<10&&t.elem.wrap('
            '),e.isFile()?(e.elemFile=t.elem,t.field=t.elem[0].name):t.elem.after(i),F.ie&&F.ie<10&&e.initIE()},w.prototype.initIE=function(){var i,e=this.config,t=y(''),n=y(['
            ',"
            "].join(""));y("#"+b)[0]||y("body").append(t),e.elem.next().hasClass(o)||(this.elemFile.wrap(n),e.elem.next("."+o).append((i=[],layui.each(e.data,function(e,t){t="function"==typeof t?t():t,i.push('')}),i.join(""))))},w.prototype.msg=function(e){return t.msg(e,{icon:2,shift:6})},w.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},w.prototype.preview=function(n){window.FileReader&&layui.each(this.chooseFiles,function(e,t){var i=new FileReader;i.readAsDataURL(t),i.onload=function(){n&&n(e,t,this.result)}})},w.prototype.upload=function(e,t){var i,n,a,o,l=this,r=l.config,u=l.elemFile[0],c=function(){return e||l.files||l.chooseFiles||u.files},s=function(){var t=0,a=0,e=c(),o=function(){r.multiple&&t+a===l.fileLength&&"function"==typeof r.allDone&&r.allDone({total:l.fileLength,successful:t,failed:a})};layui.each(e,function(i,e){var n=new FormData,e=(layui.each(r.data,function(e,t){t="function"==typeof t?t():t,n.append(e,t)}),n.append(r.field,e),{url:r.url,type:"post",data:n,contentType:!1,processData:!1,dataType:"json",headers:r.headers||{},success:function(e){t++,p(i,e),o()},error:function(e){a++,l.msg("Request URL is abnormal: "+(e.statusText||"error")),d(i),o()}});"function"==typeof r.progress&&(e.xhr=function(){var e=y.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){var t;e.lengthComputable&&(t=Math.floor(e.loaded/e.total*100),r.progress(t,(r.item||r.elem)[0],e,i))}),e}),y.ajax(e)})},f=function(){var n=y("#"+b);l.elemFile.parent().submit(),clearInterval(w.timer),w.timer=setInterval(function(){var e,t=n.contents().find("body");try{e=t.text()}catch(i){l.msg("Cross-domain requests are not supported"),clearInterval(w.timer),d()}e&&(clearInterval(w.timer),t.html(""),p(0,e))},30)},p=function(e,t){if(l.elemFile.next("."+x).remove(),u.value="","json"===r.force&&"object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},l.msg("Please return JSON data format")}"function"==typeof r.done&&r.done(t,e||0,function(e){l.upload(e)})},d=function(e){r.auto&&(u.value=""),"function"==typeof r.error&&r.error(e||0,function(e){l.upload(e)})},m=r.exts,h=(n=[],layui.each(e||l.chooseFiles,function(e,t){n.push(t.name)}),n),g={preview:function(e){l.preview(e)},upload:function(e,t){var i={};i[e]=t,l.upload(i)},pushFile:function(){return l.files=l.files||{},layui.each(l.chooseFiles,function(e,t){l.files[e]=t}),l.files},resetFile:function(e,t,i){t=new File([t],i);l.files=l.files||{},l.files[e]=t}},v={file:"\u6587\u4ef6",images:"\u56fe\u7247",video:"\u89c6\u9891",audio:"\u97f3\u9891"}[r.accept]||"\u6587\u4ef6",h=0===h.length?u.value.match(/[^\/\\]+\..+/g)||[]||"":h;if(0!==h.length){switch(r.accept){case"file":layui.each(h,function(e,t){if(m&&!RegExp(".\\.("+m+")$","i").test(escape(t)))return i=!0});break;case"video":layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(t)))return i=!0});break;case"audio":layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"mp3|wav|mid")+")$","i").test(escape(t)))return i=!0});break;default:layui.each(h,function(e,t){if(!RegExp(".\\.("+(m||"jpg|png|gif|bmp|jpeg")+")$","i").test(escape(t)))return i=!0})}if(i)return l.msg("\u9009\u62e9\u7684"+v+"\u4e2d\u5305\u542b\u4e0d\u652f\u6301\u7684\u683c\u5f0f"),u.value="";if("choose"!==t&&!r.auto||(r.choose&&r.choose(g),"choose"!==t)){if(l.fileLength=(a=0,v=c(),layui.each(v,function(){a++}),a),r.number&&l.fileLength>r.number)return l.msg("\u540c\u65f6\u6700\u591a\u53ea\u80fd\u4e0a\u4f20: "+r.number+" \u4e2a\u6587\u4ef6
            \u60a8\u5f53\u524d\u5df2\u7ecf\u9009\u62e9\u4e86: "+l.fileLength+" \u4e2a\u6587\u4ef6");if(01024*r.size&&(t=1<=(t=r.size/1024)?t.toFixed(2)+"MB":r.size+"KB",u.value="",o=t)}),o)return l.msg("\u6587\u4ef6\u5927\u5c0f\u4e0d\u80fd\u8d85\u8fc7 "+o);if(!r.before||!1!==r.before(g))F.ie?(9'+e+"")},r=function(){var e=y(this);(e.attr("lay-data")||e.attr("lay-options"))&&(n.config=y.extend({},a,lay.options(this,{attr:e.attr("lay-data")?"lay-data":null})))};a.elem.off("upload.start").on("upload.start",function(){var e=y(this);r.call(this),n.config.item=e,n.elemFile[0].click()}),F.ie&&F.ie<10||a.elem.off("upload.over").on("upload.over",function(){y(this).attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){y(this).removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(e,t){var i=y(this),t=t.originalEvent.dataTransfer.files||[];i.removeAttr("lay-over"),r.call(this),o(t),a.auto?n.upload():l(t)}),n.elemFile.off("upload.change").on("upload.change",function(){var e=this.files||[];r.call(this),o(e),a.auto?n.upload():l(e)}),a.bindAction.off("upload.action").on("upload.action",function(){n.upload()}),a.elem.data("haveEvents")||(n.elemFile.on("change",function(){y(this).trigger("upload.change")}),a.elem.on("click",function(){n.isFile()||y(this).trigger("upload.start")}),a.drag&&a.elem.on("dragover",function(e){e.preventDefault(),y(this).trigger("upload.over")}).on("dragleave",function(e){y(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),y(this).trigger("upload.drop",e)}),a.bindAction.on("click",function(){y(this).trigger("upload.action")}),a.elem.data("haveEvents",!0))},i.render=function(e){e=new w(e);return function(){var t=this;return{upload:function(e){t.upload.call(t,e)},reload:function(e){t.reload.call(t,e)},config:t.config}}.call(e)},e(n,i)});layui.define(["lay","layer","util"],function(e){"use strict";var b=layui.$,h=layui.layer,d=layui.util,l=layui.hint(),w=(layui.device(),"form"),o=".layui-form",T="layui-this",$="layui-hide",q="layui-disabled",t=function(){this.config={verify:{required:[/[\S]+/,"\u5fc5\u586b\u9879\u4e0d\u80fd\u4e3a\u7a7a"],phone:[/^1\d{10}$/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u624b\u673a\u53f7"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"\u90ae\u7bb1\u683c\u5f0f\u4e0d\u6b63\u786e"],url:[/^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/,"\u94fe\u63a5\u683c\u5f0f\u4e0d\u6b63\u786e"],number:function(e){if(isNaN(e))return"\u53ea\u80fd\u586b\u5199\u6570\u5b57"},date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"\u65e5\u671f\u683c\u5f0f\u4e0d\u6b63\u786e"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"\u8bf7\u8f93\u5165\u6b63\u786e\u7684\u8eab\u4efd\u8bc1\u53f7"]},autocomplete:null}},i=(t.prototype.set=function(e){return b.extend(!0,this.config,e),this},t.prototype.verify=function(e){return b.extend(!0,this.config.verify,e),this},t.prototype.getFormElem=function(e){return b(o+(e?'[lay-filter="'+e+'"]':""))},t.prototype.on=function(e,t){return layui.onevent.call(this,w,e,t)},t.prototype.val=function(e,i){return this.getFormElem(e).each(function(e,t){var a=b(this);layui.each(i,function(e,t){var i,e=a.find('[name="'+e+'"]');e[0]&&("checkbox"===(i=e[0].type)?e[0].checked=t:"radio"===i?e.each(function(){this.checked=this.value==t}):e.val(t))})}),r.render(null,e),this.getValue(e)},t.prototype.getValue=function(e,t){t=t||this.getFormElem(e);var a={},n={},e=t.find("input,select,textarea");return layui.each(e,function(e,t){var i;b(this);t.name=(t.name||"").replace(/^\s*|\s*&/,""),t.name&&(/^.*\[\]$/.test(t.name)&&(i=t.name.match(/^(.*)\[\]$/g)[0],a[i]=0|a[i],i=t.name.replace(/^(.*)\[\]$/,"$1["+a[i]+++"]")),/^(checkbox|radio)$/.test(t.type)&&!t.checked||(n[i||t.name]=t.value))}),n},t.prototype.render=function(e,t){var i=this.config,a=b(o+(t?'[lay-filter="'+t+'"]':"")),n={input:function(e){e=e||a.find("input,textarea");i.autocomplete&&e.attr("autocomplete",i.autocomplete),a.find("input[lay-affix],textarea[lay-affix]").each(function(){var l=b(this),r=l.attr("lay-affix"),s="layui-input-suffix",o="layui-input-affix",e=l.is("[disabled]")||l.is("[readonly]"),c=function(e,t){(e=b(e))[0]&&e[b.trim(t)?"removeClass":"addClass"]($)},n=function(t){t=b.extend({},u[r]||{value:r},t,lay.options(l[0]));var i=b('
            '),e=b(''),a=(i.append(e),t.split&&i.addClass("layui-input-split"),l.next("."+o)),n=(a[0]&&a.remove(),l.next("."+s));n[0]?((a=n.find("."+o))[0]&&a.remove(),n.prepend(i),l.css("padding-right",function(){return(l.closest(".layui-input-group")[0]?0:n.outerWidth())+i.outerWidth()})):(i.addClass(s),l.after(i)),"auto"===t.show&&c(i,l.val()),l.on("input propertychange",function(){var e=this.value;"auto"===t.show&&c(i,e)}),e.on("click",function(){var e=l.attr("lay-filter");b(this).hasClass(q)||("function"==typeof t.click&&t.click.call(this,l,t),layui.event.call(this,w,"input-affix("+e+")",{elem:l[0],affix:r,options:t}))})},u={eye:{value:"eye-invisible",click:function(e,t){var i="LAY_FORM_INPUT_AFFIX_SHOW",a=e.data(i);e.attr("type",a?"password":"text").data(i,!a),n({value:a?"eye-invisible":"eye"})}},clear:{value:"clear",click:function(e){e.val("").focus(),c(b(this).parent(),null)},show:"auto",disabled:e}};n()})},select:function(e){var p,c="\u8bf7\u9009\u62e9",m="layui-form-select",g="layui-select-title",x="layui-select-none",k="",e=e||a.find("select"),C=function(e,t){b(e.target).parent().hasClass(g)&&!t||(b("."+m).removeClass(m+"ed "+m+"up"),p&&k&&p.val(k)),p=null},u=function(a,e,t){var s,r,i,n,o,l,c=b(this),u=a.find("."+g),d=u.find("input"),f=a.find("dl"),h=f.children("dd"),y=f.children("dt"),v=this.selectedIndex;e||(r=c.attr("lay-search"),i=function(){var e=a.offset().top+a.outerHeight()+5-F.scrollTop(),t=f.outerHeight();v=c[0].selectedIndex,a.addClass(m+"ed"),h.removeClass($),y.removeClass($),s=null,h.removeClass(T),0<=v&&h.eq(v).addClass(T),e+t>F.height()&&t<=e&&a.addClass(m+"up"),o()},n=function(e){a.removeClass(m+"ed "+m+"up"),d.blur(),s=null,e||l(d.val(),function(e){var t=c[0].selectedIndex;e&&(k=b(c[0].options[t]).html(),0===t&&k===d.attr("placeholder")&&(k=""),d.val(k||""))})},o=function(){var e,t,i=f.children("dd."+T);i[0]&&(e=i.position().top,t=f.height(),i=i.height(),t\u65e0\u5339\u914d\u9879

            '):f.find("."+x).remove()},"keyup"),""===t&&(c.val(""),f.find("."+T).removeClass(T),(c[0].options[0]||{}).value||f.children("dd:eq(0)").addClass(T),f.find("."+x).remove()),o()}).on("blur",function(e){var t=c[0].selectedIndex;p=d,k=b(c[0].options[t]).html(),0===t&&k===d.attr("placeholder")&&(k=""),setTimeout(function(){l(d.val(),function(e){k||d.val("")},"blur")},200)}),h.on("click",function(){var e=b(this),t=e.attr("lay-value"),i=c.attr("lay-filter");return e.hasClass(q)||(e.hasClass("layui-select-tips")?d.val(""):(d.val(e.text()),e.addClass(T)),e.siblings().removeClass(T),c.val(t).removeClass("layui-form-danger"),layui.event.call(this,w,"select("+i+")",{elem:c[0],value:t,othis:a}),n(!0)),!1}),a.find("dl>dt").on("click",function(e){return!1}),b(document).off("click",C).on("click",C))};e.each(function(e,t){var i=b(this),a=i.next("."+m),n=this.disabled,l=t.value,r=b(t.options[t.selectedIndex]),t=t.options[0];if("string"==typeof i.attr("lay-ignore"))return i.show();var s,o="string"==typeof i.attr("lay-search"),t=t&&!t.value&&t.innerHTML||c,r=b(['
            ','
            ','','
            ','
            ',(t=i.find("*"),s=[],layui.each(t,function(e,t){var i=t.tagName.toLowerCase();0!==e||t.value||"optgroup"===i?"optgroup"===i?s.push("
            "+t.label+"
            "):s.push('
            '+b.trim(t.innerHTML)+"
            "):s.push('
            '+b.trim(t.innerHTML||c)+"
            ")}),0===s.length&&s.push('
            \u6ca1\u6709\u9009\u9879
            '),s.join("")+"
            "),"
            "].join(""));a[0]&&a.remove(),i.after(r),u.call(this,r,n,o)})},checkbox:function(e){var o={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],"switch":["layui-form-switch","layui-form-onswitch","switch"],SUBTRA:"layui-icon-indeterminate"},e=e||a.find("input[type=checkbox]"),c={primary:!0,tag:!0,"switch":!0};e.each(function(e,t){var i=b(this),a=i.attr("lay-skin")||"primary",n=d.escape(b.trim(t.title||(t.title=i.attr("lay-text")||""))),l=this.disabled,r=(i.next("[lay-checkbox]")[0]&&(n=i.next().html()||""),n="switch"===a?n.split("|"):[n],o[a=c[a]?a:"primary"]||o.checkbox);if("string"==typeof i.attr("lay-ignore"))return i.show();var s=i.next("."+r[0]),t=b(['
            ",(l={checkbox:[n[0]?"
            "+n[0]+"
            ":"primary"===a?"":"
            ",''].join(""),"switch":"
            "+((t.checked?n[0]:n[1])||"")+"
            "})[a]||l.checkbox,"
            "].join(""));s[0]&&s.remove(),i.after(t),function(a,n){var l=b(this);a.on("click",function(){var e=b(this),t=l.attr("lay-filter"),e=e.next("*[lay-checkbox]")[0]?e.next().html():l.attr("title")||"",i=l.attr("lay-skin")||"primary",e="switch"===i?e.split("|"):[e];l[0].disabled||(l[0].indeterminate&&(l[0].indeterminate=!1,a.find(o.SUBTRA).removeClass(o.SUBTRA).addClass("layui-icon-ok")),l[0].checked?(l[0].checked=!1,a.removeClass(n[1]),"switch"===i&&a.children("div").html(e[1])):(l[0].checked=!0,a.addClass(n[1]),"switch"===i&&a.children("div").html(e[0])),layui.event.call(l[0],w,n[2]+"("+t+")",{elem:l[0],value:l[0].value,othis:a}))})}.call(this,t,r)})},radio:function(e){var r="layui-form-radio",s=["layui-icon-radio","layui-icon-circle"],e=e||a.find("input[type=radio]");e.each(function(e,t){var i=b(this),a=i.next("."+r),n=this.disabled;if("string"==typeof i.attr("lay-ignore"))return i.show();a[0]&&a.remove();n=b(['
            ','',"
            "+(a=d.escape(t.title||""),a=i.next("[lay-radio]")[0]?i.next().html():a)+"
            ","
            "].join(""));i.after(n),function(a){var n=b(this),l="layui-anim-scaleSpring";a.on("click",function(){var e=n[0].name,t=n.parents(o),i=n.attr("lay-filter"),e=t.find("input[name="+e.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(e,function(){var e=b(this).next("."+r);this.checked=!1,e.removeClass(r+"ed"),e.find(".layui-icon").removeClass(l+" "+s[0]).addClass(s[1])}),n[0].checked=!0,a.addClass(r+"ed"),a.find(".layui-icon").addClass(l+" "+s[0]),layui.event.call(n[0],w,"radio("+i+")",{elem:n[0],value:n[0].value,othis:a}))})}.call(this,n)})}},t=function(){layui.each(n,function(e,t){t()})};return"object"===layui.type(e)?b(e).is(o)?(a=b(e),t()):e.each(function(e,t){var i=b(t);i.closest(o).length&&("SELECT"===t.tagName?n.select(i):"INPUT"===t.tagName&&("checkbox"===(t=t.type)||"radio"===t?n[t](i):n.input(i)))}):e?n[e]?n[e]():l.error('\u4e0d\u652f\u6301\u7684 "'+e+'" \u8868\u5355\u6e32\u67d3'):t(),this},t.prototype.validate=function(e){var u=null,d=r.config.verify,f="layui-form-danger";return!(e=b(e))[0]||(e.attr("lay-verify")!==undefined||!1!==this.validate(e.find("*[lay-verify]")))&&(layui.each(e,function(e,r){var s=b(this),t=(s.attr("lay-verify")||"").split("|"),o=s.attr("lay-vertype"),c=b.trim(s.val());if(s.removeClass(f),layui.each(t,function(e,t){var i="",a=d[t];if(a){var n="function"==typeof a?i=a(c,r):!a[0].test(c),l="select"===r.tagName.toLowerCase()||/^(checkbox|radio)$/.test(r.type),i=i||a[1];if("required"===t&&(i=s.attr("lay-reqtext")||i),n&&("required"===t||c&&"required"!==t))return"tips"===o?h.tips(i,"string"!=typeof s.attr("lay-ignore")&&l?s.next():s,{tips:1}):"alert"===o?h.alert(i,{title:"\u63d0\u793a",shadeClose:!0}):/\b(string|number)\b/.test(typeof i)&&h.msg(i,{icon:5,shift:6}),setTimeout(function(){(l?s.next().find("input"):r).focus()},7),s.addClass(f),u=!0}}),u)return u}),!u)},t.prototype.submit=function(e,t){var i=b(this),e="string"==typeof e?e:i.attr("lay-filter"),a=this.getFormElem?this.getFormElem(e):i.parents(o).eq(0),n=a.find("*[lay-verify]");if(!r.validate(n))return!1;n=r.getValue(null,a),a={elem:this.getFormElem?window.event&&window.event.target:this,form:(this.getFormElem?a:i.parents("form"))[0],field:n};return"function"==typeof t&&t(a),layui.event.call(this,w,"submit("+e+")",a)}),r=new t,t=b(document),F=b(window);b(function(){r.render()}),t.on("reset",o,function(){var e=b(this).attr("lay-filter");setTimeout(function(){r.render(null,e)},50)}),t.on("submit",o,i).on("click","*[lay-submit]",i),e(w,r)});layui.define(["lay","laytpl","laypage","form","util"],function(e){"use strict";var p=layui.$,c=layui.lay,m=layui.laytpl,O=layui.laypage,f=layui.layer,v=layui.form,g=layui.util,y=layui.hint(),b=layui.device(),x={config:{checkName:"LAY_CHECKED",indexName:"LAY_INDEX",numbersName:"LAY_NUM",disabledName:"LAY_DISABLED"},cache:{},index:layui.table?layui.table.index+1e4:0,set:function(e){var t=this;return t.config=p.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,T,e,t)}},k=function(){var a=this,e=a.config,i=e.id||e.index;return{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){x.reloadData(i,e,t)},setColsWidth:function(){a.setColsWidth.call(a)},resize:function(){a.resize.call(a)}}},C=function(e){var t=k.that[e];return t||y.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},l=function(e){var t=k.config[e];return t||y.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},w=function(e){var t=this.config||{},a=(e=e||{}).item3,i=e.content,t=(("escape"in a?a:t).escape&&(i=g.escape(i)),e.text&&a.exportTemplet||a.templet||a.toolbar);return t&&(i="function"==typeof t?t.call(a,e.tplData,e.obj):m(p(t).html()||String(i)).render(p.extend({LAY_COL:a},e.tplData))),e.text?p("
            "+i+"
            ").text():i},T="table",t=".layui-table",L="layui-hide",h="layui-hide-v",N="layui-none",_="layui-table-view",o=".layui-table-header",R=".layui-table-body",A=".layui-table-pageview",D=".layui-table-sort",E="layui-table-edit",W="layui-table-hover",H="laytable-cell-group",M="layui-table-col-special",j="layui-table-tool-panel",S="LAY_TABLE_MOVE_DICT",a=function(e){return['',"","{{# layui.each(d.data.cols, function(i1, item1){ }}","","{{# layui.each(item1, function(i2, item2){ }}",'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}','{{# if(item2.fixed === "right"){ right = true; } }}',(e=e||{}).fixed&&"right"!==e.fixed?'{{# if(item2.fixed && item2.fixed !== "right"){ }}':"right"===e.fixed?'{{# if(item2.fixed === "right"){ }}':"","{{# var isSort = !(item2.colGroup) && item2.sort; }}",'",e.fixed?"{{# }; }}":"","{{# }); }}","","{{# }); }}","","
            ','
            ','{{# if(item2.type === "checkbox"){ }}','',"{{# } else { }}",'{{-item2.title||""}}',"{{# if(isSort){ }}",'',"{{# } }}","{{# } }}","
            ","
            "].join("")},i=['',"","
            "].join(""),r=[,"{{# if(d.data.toolbar){ }}",'
            ','
            ','
            ',"
            ","{{# } }}",'
            ',"{{# if(d.data.loading){ }}",'
            ','',"
            ","{{# } }}","{{# var left, right; }}",'
            ',a(),"
            ",'
            ',i,"
            ","{{# if(left){ }}",'
            ','
            ',a({fixed:!0}),"
            ",'
            ',i,"
            ","
            ","{{# }; }}","{{# if(right){ }}",'
            ','
            ',a({fixed:"right"}),'
            ',"
            ",'
            ',i,"
            ","
            ","{{# }; }}","
            ","{{# if(d.data.totalRow){ }}",'
            ','','',"
            ","
            ","{{# } }}",'
            ','
            ',"
            ",""].join(""),I=p(window),F=p(document),n=function(e){this.index=++x.index,this.config=p.extend({},this.config,x.config,e),this.render()},d=(n.prototype.config={limit:10,loading:!0,escape:!0,cellMinWidth:60,cellMaxWidth:Number.MAX_VALUE,editTrigger:"click",defaultToolbar:["filter","exports","print"],defaultContextmenu:!0,autoSort:!0,text:{none:"\u65e0\u6570\u636e"},cols:[]},n.prototype.render=function(e){var t=this,a=t.config,i=(a.elem=p(a.elem),a.where=a.where||{},a.id="id"in a?a.id:a.elem.attr("id")||t.index);if(k.that[i]=t,(k.config[i]=a).request=p.extend({pageName:"page",limitName:"limit"},a.request),a.response=p.extend({statusName:"code",statusCode:0,msgName:"msg",dataName:"data",totalRowName:"totalRow",countName:"count"},a.response),null!==a.page&&"object"==typeof a.page&&(a.limit=a.page.limit||a.limit,a.limits=a.page.limits||a.limits,t.page=a.page.curr=a.page.curr||1,delete a.page.elem,delete a.page.jump),!a.elem[0])return t;if(a.elem.attr("lay-filter")||a.elem.attr("lay-filter",a.id),"reloadData"===e)return t.pullData(t.page,{type:"reloadData"});a.index=t.index,t.key=a.id||a.index,t.setInit(),a.height&&/^full-\d+$/.test(a.height)?(t.fullHeightGap=a.height.split("-")[1],a.height=I.height()-t.fullHeightGap):a.height&&/^#\w+\S*-\d+$/.test(a.height)&&(i=a.height.split("-"),t.parentHeightGap=i.pop(),t.parentDiv=i.join("-"),a.height=p(t.parentDiv).height()-t.parentHeightGap);var l,e=a.elem,i=e.next("."+_),n=t.elem=p("
            ");n.addClass((l=[_,_+"-"+t.index,"layui-form","layui-border-box"],a.className&&l.push(a.className),l.join(" "))).attr({"lay-filter":"LAY-TABLE-FORM-DF-"+t.index,"lay-id":a.id,style:(l=[],a.width&&l.push("width:"+a.width+"px;"),a.height&&l.push("height:"+a.height+"px;"),l.join(""))}).html(m(r,{open:"{{",close:"}}"}).render({data:a,index:t.index})),i[0]&&i.remove(),e.after(n),t.layTool=n.find(".layui-table-tool"),t.layBox=n.find(".layui-table-box"),t.layHeader=n.find(o),t.layMain=n.find(".layui-table-main"),t.layBody=n.find(R),t.layFixed=n.find(".layui-table-fixed"),t.layFixLeft=n.find(".layui-table-fixed-l"),t.layFixRight=n.find(".layui-table-fixed-r"),t.layTotal=n.find(".layui-table-total"),t.layPage=n.find(".layui-table-page"),t.renderToolbar(),t.renderPagebar(),t.fullSize(),t.pullData(t.page),t.events()},n.prototype.initOpts=function(e){this.config;e.checkbox&&(e.type="checkbox"),e.space&&(e.type="space"),e.type||(e.type="normal"),"normal"!==e.type&&(e.unresize=!0,e.width=e.width||{checkbox:50,radio:50,space:30,numbers:60}[e.type])},n.prototype.setInit=function(e){var l,a,d=this,c=d.config;if(c.clientWidth=c.width||(l=function(e){var t,a=(e=e||c.elem.parent()).width();try{t="none"===e.css("display")}catch(i){}return!e[0]||a&&!t?a:l(e.parent())})(),"width"===e)return c.clientWidth;c.height=c.maxHeight||c.height,c.css&&-1===c.css.indexOf(_)&&(a=c.css.split("}"),layui.each(a,function(e,t){t&&(a[e]="."+_+"-"+d.index+" "+t)}),c.css=a.join("}"));var r=function(a,e,i,l){var n,o;l?(l.key=[c.index,a,i].join("-"),l.colspan=l.colspan||0,l.rowspan=l.rowspan||0,d.initOpts(l),(n=a+(parseInt(l.rowspan)||1))
            ','
            ','
            '].join(""),a=this.layTool.find(".layui-table-tool-temp"),i=("default"===e.toolbar?a.html(t):"string"==typeof e.toolbar&&(t=p(e.toolbar).html()||"")&&a.html(m(t).render(e)),{filter:{title:"\u7b5b\u9009\u5217",layEvent:"LAYTABLE_COLS",icon:"layui-icon-cols"},exports:{title:"\u5bfc\u51fa",layEvent:"LAYTABLE_EXPORT",icon:"layui-icon-export"},print:{title:"\u6253\u5370",layEvent:"LAYTABLE_PRINT",icon:"layui-icon-print"}}),l=[];"object"==typeof e.defaultToolbar&&layui.each(e.defaultToolbar,function(e,t){t="string"==typeof t?i[t]:t;t&&l.push('
            ')}),this.layTool.find(".layui-table-tool-self").html(l.join(""))},n.prototype.renderPagebar=function(){var e,t=this.config,a=this.layPagebar=p('
            ');t.pagebar&&((e=p(t.pagebar).html()||"")&&a.append(m(e).render(t)),this.layPage.append(a))},n.prototype.setParentCol=function(e,t){var a=this.config,i=this.layHeader.find('th[data-key="'+t+'"]'),l=parseInt(i.attr("colspan"))||0;i[0]&&(t=t.split("-"),t=a.cols[t[1]][t[2]],e?l--:l++,i.attr("colspan",l),i[l?"removeClass":"addClass"](L),t.colspan2=l,t.hide=l<1,(a=i.data("parentkey"))&&this.setParentCol(e,a))},n.prototype.setColsPatch=function(){var a=this,e=a.config;layui.each(e.cols,function(e,t){layui.each(t,function(e,t){t.hide&&a.setParentCol(t.hide,t.parentKey)})})},n.prototype.setGroupWidth=function(i){var e,l=this;l.config.cols.length<=1||((e=l.layHeader.find((i?"th[data-key="+i.data("parentkey")+"]>":"")+"."+H)).css("width",0),layui.each(e.get().reverse(),function(){var e=p(this),t=e.parent().data("key"),a=0;l.layHeader.eq(0).find("th[data-parentkey="+t+"]").width(function(e,t){p(this).hasClass(L)||0 tr:first-child > th:last-child")).data("field")&&e.prev()[0]?t(e.prev()):e})()).data("key"),n.getCssRule(e,function(e){var t=e.style.width||a.outerWidth();e.style.width=parseFloat(t)+l+"px",0'+(e||"Error")+"
            ");a[0]&&(t.layNone.remove(),a.remove()),t.layFixed.addClass(L),t.layMain.find("tbody").html(""),t.layMain.append(t.layNone=e),t.layTotal.addClass(h),t.layPage.find(A).addClass(h),x.cache[t.key]=[],t.syncCheckAll(),t.renderForm(),t.setColsWidth()},n.prototype.page=1,n.prototype.pullData=function(t,a){var e,i,l=this,n=l.config,o=n.request,d=n.response,c=function(){"object"==typeof n.initSort&&l.sort({field:n.initSort.field,type:n.initSort.type,reloadType:a.type})};a=a||{},"function"==typeof n.before&&n.before(n),l.startTime=(new Date).getTime(),n.url?(e={},n.page&&(e[o.pageName]=t,e[o.limitName]=n.limit),o=p.extend(e,n.where),n.contentType&&0==n.contentType.indexOf("application/json")&&(o=JSON.stringify(o)),l.loading(),p.ajax({type:n.method||"get",url:n.url,contentType:n.contentType,data:o,dataType:n.dataType||"json",jsonpCallback:n.jsonpCallback,headers:n.headers||{},success:function(e){(e="function"==typeof n.parseData?n.parseData(e)||e:e)[d.statusName]!=d.statusCode?l.errorView(e[d.msgName]||'\u8fd4\u56de\u7684\u6570\u636e\u4e0d\u7b26\u5408\u89c4\u8303\uff0c\u6b63\u786e\u7684\u6210\u529f\u72b6\u6001\u7801\u5e94\u4e3a\uff1a"'+d.statusName+'": '+d.statusCode):(l.renderData({res:e,curr:t,count:e[d.countName],type:a.type}),c(),n.time=(new Date).getTime()-l.startTime+" ms"),l.setColsWidth(),"function"==typeof n.done&&n.done(e,t,e[d.countName])},error:function(e,t){l.errorView("\u8bf7\u6c42\u5f02\u5e38\uff0c\u9519\u8bef\u63d0\u793a\uff1a"+t),"function"==typeof n.error&&n.error(e,t)}})):"array"===layui.type(n.data)&&(e={},o=t*n.limit-n.limit,i=n.data.concat(),e[d.dataName]=n.page?i.splice(o,n.limit):i,e[d.countName]=n.data.length,"object"==typeof n.totalRow&&(e[d.totalRowName]=p.extend({},n.totalRow)),l.renderData({res:e,curr:t,count:e[d.countName],type:a.type}),c(),l.setColsWidth(),"function"==typeof n.done&&n.done(e,t,e[d.countName]))},n.prototype.eachCols=function(e){return x.eachCols(null,e,this.config.cols),this},n.prototype.col=function(e){try{return e=e.split("-"),this.config.cols[e[1]][e[2]]||{}}catch(t){return y.error(t),{}}},n.prototype.getTrHtml=function(t,a,l,e){var u=this,y=u.config,n=e&&e.trs||[],h=e&&e.trs_fixed||[],f=e&&e.trs_fixed_r||[];return l=l||1,layui.each(t,function(o,d){var i=[],c=[],r=[],s=o+y.limit*(l-1)+1;if("object"!=typeof d){t[o]=d={LAY_KEY:d};try{x.cache[u.key][o]=d}catch(e){}}"array"===layui.type(d)&&0===d.length||(d[x.config.numbersName]=s,a||(d[x.config.indexName]=o),u.eachCols(function(e,l){var t,e=l.field||e,a=l.key,n=d[e];n!==undefined&&null!==n||(n=""),l.colGroup||(t=['','
            "+function(){var e,t=p.extend(!0,{LAY_COL:l},d),a=x.config.checkName,i=x.config.disabledName;switch(l.type){case"checkbox":return'';case"radio":return t[a]&&(u.thisCheckedRowIndex=o),'';case"numbers":return s}return l.toolbar?m(p(l.toolbar).html()||"").render(t):w.call(u,{item3:l,content:n,tplData:t})}(),"
            "].join(""),i.push(t),l.fixed&&"right"!==l.fixed&&c.push(t),"right"===l.fixed&&r.push(t))}),n.push(''+i.join("")+""),h.push(''+c.join("")+""),f.push(''+r.join("")+""))}),{trs:n,trs_fixed:h,trs_fixed_r:f}},x.getTrHtml=function(e,t){return C(e).getTrHtml(t)},n.prototype.renderData=function(e){var a=this,i=a.config,t=e.res,l=e.curr,n=e.count,o=e.sort,d=t[i.response.dataName]||[],t=t[i.response.totalRowName],c=[],r=[],s=[],u=function(){if(i.HAS_SET_COLS_PATCH||a.setColsPatch(),i.HAS_SET_COLS_PATCH=!0,a.thisCheckedRowIndex="",!o&&a.sortKey)return a.sort({field:a.sortKey.field,type:a.sortKey.sort,pull:!0,reloadType:e.type});a.getTrHtml(d,o,l,{trs:c,trs_fixed:r,trs_fixed_r:s}),"fixed"===i.scrollPos&&"reloadData"===e.type||a.layBody.scrollTop(0),"reset"===i.scrollPos&&a.layBody.scrollLeft(0),a.layMain.find("."+N).remove(),a.layMain.find("tbody").html(c.join("")),a.layFixLeft.find("tbody").html(r.join("")),a.layFixRight.find("tbody").html(s.join("")),a.renderForm(),"number"==typeof a.thisCheckedRowIndex&&a.setRowChecked({type:"radio",index:a.thisCheckedRowIndex},!0),a.syncCheckAll(),a.fullSize(),a.haveInit?a.scrollPatch():setTimeout(function(){a.scrollPatch()},50),a.haveInit=!0,f.close(a.tipsIndex)};return x.cache[a.key]=d,a.layTotal[0==d.length?"addClass":"removeClass"](h),a.layPage[i.page||i.pagebar?"removeClass":"addClass"](L),a.layPage.find(A)[!i.page||0==n||0===d.length&&1==l?"addClass":"removeClass"](h),0===d.length?a.errorView(i.text.none):(a.layFixLeft.removeClass(L),o?u():(u(),a.renderTotal(d,t),a.layTotal&&a.layTotal.removeClass(L),void(i.page&&(i.page=p.extend({elem:"layui-table-page"+i.index,count:n,limit:i.limit,limits:i.limits||[10,20,30,40,50,60,70,80,90],groups:3,layout:["prev","page","next","skip","count","limit"],prev:'',next:'',jump:function(e,t){t||(a.page=e.curr,i.limit=e.limit,a.pullData(e.curr))}},i.page),i.page.count=n,O.render(i.page)))))},n.prototype.renderTotal=function(e,o){var d,c=this,r=c.config,s={};r.totalRow&&(layui.each(e,function(e,i){"array"===layui.type(i)&&0===i.length||c.eachCols(function(e,t){var e=t.field||e,a=i[e];t.totalRow&&(s[e]=(s[e]||0)+(parseFloat(a)||0))})}),c.dataTotal=[],d=[],c.eachCols(function(e,t){var a,e=t.field||e,i=o&&o[t.field],l="totalRowDecimals"in t?t.totalRowDecimals:2,l=s[e]?parseFloat(s[e]||0).toFixed(l):"",l=(a=t.totalRowText||"",(n={LAY_COL:t})[e]=l,n=t.totalRow&&w.call(c,{item3:t,content:l,tplData:n})||a,i||n),n=(t.field&&c.dataTotal.push({field:t.field,total:p("
            "+l+"
            ").text()}),['','
            "+("string"==typeof(a=t.totalRow||r.totalRow)?m(a).render(p.extend({TOTAL_NUMS:i||s[e],TOTAL_ROW:o||{},LAY_COL:t},t)):l),"
            "].join(""));d.push(n)}),e=c.layTotal.find(".layui-table-patch"),c.layTotal.find("tbody").html(""+d.join("")+(e.length?e.get(0).outerHTML:"")+""))},n.prototype.getColElem=function(e,t){this.config;return e.eq(0).find(".laytable-cell-"+t+":eq(0)")},n.prototype.renderForm=function(e){this.config;var t=this.elem.attr("lay-filter");v.render(e,t)},n.prototype.setRowChecked=function(a,e){var t=this,i=t.config,l="layui-table-click",n=t.layBody.find("tr"+("all"===a.index?"":'[data-index="'+a.index+'"]'));"checkbox"!==(a=p.extend({type:"checkbox",checked:!0},a)).type&&"all"!==a.index&&n.addClass(l).siblings("tr").removeClass(l),a.selectedStyle||e||(l=x.cache[t.key],layui.each(l,function(e,t){a.index===e||"all"===a.index?t[i.checkName]=a.checked:"radio"===a.type&&delete t[i.checkName]}),n.find('input[lay-type="'+({radio:"layTableRadio",checkbox:"layTableCheckbox"}[a.type]||"checkbox")+'"]').prop("checked",a.checked),t.syncCheckAll(),t.renderForm(a.type))},n.prototype.sort=function(l){var e,t=this,a={},i=t.config,n=i.elem.attr("lay-filter"),o=x.cache[t.key];"string"==typeof(l=l||{}).field&&(d=l.field,t.layHeader.find("th").each(function(e,t){var a=p(this),i=a.data("field");if(i===l.field)return l.field=a,d=i,!1}));try{var d=d||l.field.data("field"),c=l.field.data("key");if(t.sortKey&&!l.pull&&d===t.sortKey.field&&l.type===t.sortKey.sort)return;var r=t.layHeader.find("th .laytable-cell-"+c).find(D);t.layHeader.find("th").find(D).removeAttr("lay-sort"),r.attr("lay-sort",l.type||null),t.layFixed.find("th")}catch(s){y.error("Table modules: sort field '"+d+"' not matched")}t.sortKey={field:d,sort:l.type},i.autoSort&&("asc"===l.type?e=layui.sort(o,d,null,!0):"desc"===l.type?e=layui.sort(o,d,!0,!0):(e=layui.sort(o,x.config.indexName,null,!0),delete t.sortKey,delete i.initSort)),a[i.response.dataName]=e||o,t.renderData({res:a,curr:t.page,count:t.count,sort:!0,type:l.reloadType}),l.fromEvent&&(i.initSort={field:d,type:l.type},layui.event.call(l.field,T,"sort("+n+")",p.extend({config:i},i.initSort)))},n.prototype.loading=function(e){var t=this;t.config.loading&&(e?(t.layInit&&t.layInit.remove(),delete t.layInit,t.layBox.find(".layui-table-init").remove()):(t.layInit=p(['
            ','',"
            "].join("")),t.layBox.append(t.layInit)))},n.prototype.setCheckData=function(e,t){var a=this.config,i=x.cache[this.key];i[e]&&"array"!==layui.type(i[e])&&(i[e][a.checkName]=t)},n.prototype.syncCheckAll=function(){var e=this,i=e.config,t=e.layHeader.find('input[name="layTableCheckbox"]'),a=function(a){return e.eachCols(function(e,t){"checkbox"===t.type&&(t[i.checkName]=a)}),a};t[0]&&(x.checkStatus(e.key).isAll?(t[0].checked||(t.prop("checked",!0),e.renderForm("checkbox")),a(!0)):(t[0].checked&&(t.prop("checked",!1),e.renderForm("checkbox")),a(!1)))},n.prototype.getCssRule=function(a,i){var e=this.elem.find("style")[0],e=e.sheet||e.styleSheet||{},e=e.cssRules||e.rules;layui.each(e,function(e,t){if(t.selectorText===".laytable-cell-"+a)return i(t),!0})},n.prototype.fullSize=function(){var e,a,i=this,t=i.config,l=t.height;i.fullHeightGap?(l=I.height()-i.fullHeightGap,i.elem.css("height",l=l<135?135:l)):i.parentDiv&&i.parentHeightGap&&(l=p(i.parentDiv).height()-i.parentHeightGap,i.elem.css("height",l=l<135?135:l)),1
            ')).find("div").css({width:a}),e.find("tr").append(t)):e.find(".layui-table-patch").remove()};n(e.layHeader),n(e.layTotal);n=e.layMain.height()-i;e.layFixed.find(R).css("height",t.height()>=n?n:"auto"),e.layFixRight[x.cache[e.key]&&x.cache[e.key].length&&0');a.html(t),u.height&&a.css("max-height",u.height-(s.layTool.outerHeight()||50)),i.find("."+j)[0]||i.append(a),s.renderForm(),a.on("click",function(e){layui.stope(e)}),e.done&&e.done(a,t)};switch(layui.stope(e),F.trigger("table.tool.panel.remove"),f.close(s.tipsIndex),t){case"LAYTABLE_COLS":l({list:(a=[],s.eachCols(function(e,t){t.field&&"normal"==t.type&&a.push('
          • "+(t.fieldTitle||t.title||t.field)+"
          • ").text())+'" lay-filter="LAY_TABLE_TOOL_COLS">')}),a.join("")),done:function(){v.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var e=p(e.elem),t=this.checked,a=e.data("key"),i=s.col(a),l=i.hide,e=e.data("parentkey");i.key&&(i.hide=!t,s.elem.find('*[data-key="'+a+'"]')[t?"removeClass":"addClass"](L),l!=i.hide&&s.setParentCol(!t,e),s.resize(),layui.event.call(this,T,"colToggled("+c+")",{col:i,config:u}))})}});break;case"LAYTABLE_EXPORT":b.ie?f.tips("\u5bfc\u51fa\u529f\u80fd\u4e0d\u652f\u6301 IE\uff0c\u8bf7\u7528 Chrome \u7b49\u9ad8\u7ea7\u6d4f\u89c8\u5668\u5bfc\u51fa",this,{tips:3}):l({list:['
          • \u5bfc\u51fa csv \u683c\u5f0f\u6587\u4ef6
          • ','
          • \u5bfc\u51fa xls \u683c\u5f0f\u6587\u4ef6
          • '].join(""),done:function(e,t){t.on("click",function(){var e=p(this).data("type");x.exportFile.call(s,u.id,null,e)})}});break;case"LAYTABLE_PRINT":var n=window.open("about:blank","_blank"),o=[""].join(""),d=p(s.layHeader.html());d.append(s.layMain.find("table").html()),d.append(s.layTotal.find("table").html()),d.find("th.layui-table-patch").remove(),d.find("thead>tr>th."+M).filter(function(e,t){return!p(t).children("."+H).length}).remove(),d.find("tbody>tr>td."+M).remove(),n.document.write(o+d.prop("outerHTML")),n.document.close(),n.print(),n.close()}layui.event.call(this,T,"toolbar("+c+")",p.extend({event:t,config:u},{}))}),s.layPagebar.on("click","*[lay-event]",function(e){var t=p(this).attr("lay-event");layui.event.call(this,T,"pagebar("+c+")",p.extend({event:t,config:u},{}))}),e.on("mousemove",function(e){var t=p(this),a=t.offset().left,e=e.clientX-a;t.data("unresize")||k.eventMoveElem||(d.allowResize=t.width()-e<=10,o.css("cursor",d.allowResize?"col-resize":""))}).on("mouseleave",function(){p(this);k.eventMoveElem||o.css("cursor","")}).on("mousedown",function(e){var t,a=p(this);d.allowResize&&(t=a.data("key"),e.preventDefault(),d.offset=[e.clientX,e.clientY],s.getCssRule(t,function(e){var t=e.style.width||a.outerWidth();d.rule=e,d.ruleWidth=parseFloat(t),d.minWidth=a.data("minwidth")||u.cellMinWidth,d.maxWidth=a.data("maxwidth")||u.cellMaxWidth}),a.data(S,d),k.eventMoveElem=a)}),k.docEvent||F.on("mousemove",function(e){var t,a;k.eventMoveElem&&(t=k.eventMoveElem.data(S)||{},k.eventMoveElem.data("resizing",1),e.preventDefault(),t.rule&&(e=t.ruleWidth+e.clientX-t.offset[0],a=k.eventMoveElem.closest("."+_).attr("lay-id"),(a=C(a))&&((e=et.maxWidth&&(e=t.maxWidth),t.rule.style.width=e+"px",a.setGroupWidth(k.eventMoveElem),f.close(s.tipsIndex))))}).on("mouseup",function(e){var t,a,i,l,n;k.eventMoveElem&&(i=(t=k.eventMoveElem).closest("."+_).attr("lay-id"),(a=C(i))&&(i=t.data("key"),l=a.col(i),n=a.config.elem.attr("lay-filter"),d={},o.css("cursor",""),a.scrollPatch(),t.removeData(S),delete k.eventMoveElem,a.getCssRule(i,function(e){l.width=parseFloat(e.style.width),layui.event.call(t[0],T,"colResized("+n+")",{col:l,config:a.config})})))}),k.docEvent=!0,e.on("click",function(e){var t=p(this),a=t.find(D),i=a.attr("lay-sort");if(!a[0]||1===t.data("resizing"))return t.removeData("resizing");s.sort({field:t,type:"asc"===i?"desc":"desc"===i?null:"asc",fromEvent:!0})}).find(D+" .layui-edge ").on("click",function(e){var t=p(this),a=t.index(),t=t.parents("th").eq(0).data("field");layui.stope(e),0===a?s.sort({field:t,type:"asc",fromEvent:!0}):s.sort({field:t,type:"desc",fromEvent:!0})}),s.commonMember=function(e){var t=p(this).parents("tr").eq(0).data("index"),c=s.layBody.find('tr[data-index="'+t+'"]'),r=(r=x.cache[s.key]||[])[t]||{},a={tr:c,config:u,data:x.clearCacheKey(r),index:t,del:function(){x.cache[s.key][t]=[],c.remove(),s.scrollPatch()},update:function(e,d){e=e||{},layui.each(e,function(i,l){var n=c.children('td[data-field="'+i+'"]'),o=n.children(y);r[i]=a.data[i]=l,s.eachCols(function(e,t){var a;t.field==i?(o.html(w.call(s,{item3:t,content:l,tplData:p.extend({LAY_COL:t},r)})),n.data("content",l)):d&&(t.templet||t.toolbar)&&(e=c.children('td[data-field="'+(t.field||e)+'"]'),a=r[t.field],e.children(y).html(w.call(s,{item3:t,content:a,tplData:p.extend({LAY_COL:t},r)})),e.data("content",a))})}),s.renderForm()},setRowChecked:function(e){s.setRowChecked(p.extend({index:t},e))}};return p.extend(a,e)}),t=(s.elem.on("click",'input[name="layTableCheckbox"]+',function(){var e=p(this),t=e.closest("td"),e=e.prev(),a=s.layBody.find('input[name="layTableCheckbox"]'),i=e.parents("tr").eq(0).data("index"),l=e[0].checked,n="layTableAllChoose"===e.attr("lay-filter");e[0].disabled||(n?(a.each(function(e,t){t.checked=l,s.setCheckData(e,l)}),s.syncCheckAll(),s.renderForm("checkbox")):(s.setCheckData(i,l),s.syncCheckAll()),layui.event.call(e[0],T,"checkbox("+c+")",r.call(e[0],{checked:l,type:n?"all":"one",getCol:function(){return s.col(t.data("key"))}})))}),s.elem.on("click",'input[lay-type="layTableRadio"]+',function(){var e=p(this),t=e.closest("td"),e=e.prev(),a=e[0].checked,i=e.parents("tr").eq(0).data("index");e[0].disabled||(s.setRowChecked({type:"radio",index:i}),layui.event.call(e[0],T,"radio("+c+")",r.call(e[0],{checked:a,getCol:function(){return s.col(t.data("key"))}})))}),s.layBody.on("mouseenter","tr",function(){var e=p(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").addClass(W)}).on("mouseleave","tr",function(){var e=p(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").removeClass(W)}).on("click","tr",function(){t.call(this,"row")}).on("dblclick","tr",function(){t.call(this,"rowDouble")}).on("contextmenu","tr",function(e){u.defaultContextmenu||e.preventDefault(),t.call(this,"rowContextmenu")}),function(e){var t=p(this);t.data("off")||layui.event.call(this,T,e+"("+c+")",r.call(t.children("td")[0]))}),n=function(e,t){var a,i,l,n;(e=p(e)).data("off")||(a=e.data("field"),n=e.data("key"),n=s.col(n),i=e.closest("tr").data("index"),i=x.cache[s.key][i],l=e.children(y),(n="function"==typeof n.edit?n.edit(i):n.edit)&&((n=p("textarea"===n?'':''))[0].value=e.data("content")||i[a]||l.text(),e.find("."+E)[0]||e.append(n),n.focus(),t&&layui.stope(t)))},i=(s.layBody.on("change","."+E,function(){var e=p(this),t=e.parent(),a=this.value,i=e.parent().data("field"),e=e.closest("tr").data("index"),e=x.cache[s.key][e],l=r.call(t[0],{value:a,field:i,oldValue:e[i],td:t,reedit:function(){setTimeout(function(){n(l.td);var e={};e[i]=l.oldValue,l.update(e)})},getCol:function(){return s.col(t.data("key"))}}),e={};e[i]=a,l.update(e),layui.event.call(t[0],T,"edit("+c+")",l)}).on("blur","."+E,function(){p(this).remove()}),s.layBody.on(u.editTrigger,"td",function(e){n(this,e)}).on("mouseenter","td",function(){a.call(this)}).on("mouseleave","td",function(){a.call(this,"hide")}),s.layTotal.on("mouseenter","td",function(){a.call(this)}).on("mouseleave","td",function(){a.call(this,"hide")}),"layui-table-grid-down"),a=function(e){var t=p(this),a=t.children(y);t.data("off")||(e?t.find(".layui-table-grid-down").remove():!(a.prop("scrollWidth")>a.outerWidth()||0'))},l=function(e){var t=p(this).parent().children(y);s.tipsIndex=f.tips(['
            ',t.html(),"
            ",''].join(""),t[0],{tips:[3,""],time:-1,anim:-1,maxWidth:b.ios||b.android?300:s.elem.width()/2,isOutAnim:!1,skin:"layui-table-tips",success:function(e,t){e.find(".layui-table-tips-c").on("click",function(){f.close(t)})}}),layui.stope(e)},h=(s.layBody.on("click","."+i,function(e){l.call(this,e)}),s.layTotal.on("click","."+i,function(e){l.call(this,e)}),function(e){var t=p(this),a=t.closest("td"),i=t.parents("tr").eq(0).data("index");layui.event.call(this,T,(e||"tool")+"("+c+")",r.call(this,{event:t.attr("lay-event"),getCol:function(){return s.col(a.data("key"))}})),s.setRowChecked({type:"radio",index:i},!0)});s.layBody.on("click","*[lay-event]",function(e){h.call(this),layui.stope(e)}).on("dblclick","*[lay-event]",function(e){h.call(this,"toolDouble"),layui.stope(e)}),s.layMain.on("scroll",function(){var e=p(this),t=e.scrollLeft(),e=e.scrollTop();s.layHeader.scrollLeft(t),s.layTotal.scrollLeft(t),s.layFixed.find(R).scrollTop(e),f.close(s.tipsIndex)}),I.on("resize",function(){s.resize()})},F.on("click",function(){F.trigger("table.remove.tool.panel")}),F.on("table.remove.tool.panel",function(){p("."+j).remove()}),x.init=function(i,o){o=o||{};var e="object"==typeof i?i:p("string"==typeof i?'table[lay-filter="'+i+'"]':t+"[lay-data], "+t+"[lay-options]"),d="Table element property lay-data configuration item has a syntax error: ";return e.each(function(){var l,e=p(this),t=e.attr("lay-data"),t=c.options(this,{attr:t?"lay-data":null,errorText:d+(t||e.attr("lay-options"))}),n=p.extend({elem:this,cols:[],data:[],skin:e.attr("lay-skin"),size:e.attr("lay-size"),even:"string"==typeof e.attr("lay-even")},x.config,o,t),a=(i&&e.hide(),e.find("thead>tr").each(function(i){n.cols[i]=[],p(this).children().each(function(e){var t=p(this),a=t.attr("lay-data"),a=c.options(this,{attr:a?"lay-data":null,errorText:d+(a||t.attr("lay-options"))}),t=p.extend({title:t.text(),colspan:parseInt(t.attr("colspan"))||0,rowspan:parseInt(t.attr("rowspan"))||0},a);n.cols[i].push(t)})}),e.find("tbody>tr")),t=x.render(n);!a.length||o.data||t.config.url||(l=0,x.eachCols(t.config.id,function(e,i){a.each(function(e){n.data[e]=n.data[e]||{};var t=p(this),a=i.field;n.data[e][a]=t.children("td").eq(l).html()}),l++}),t.reloadData({data:n.data}))}),this},k.that={},k.config={},function(a,i,e,l){var n,o;l.colGroup&&(n=0,a++,l.CHILD_COLS=[],o=e+(parseInt(l.rowspan)||1),layui.each(i[o],function(e,t){t.parentKey?t.parentKey===l.key&&(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),d(a,i,o,t)):t.PARENT_COL_INDEX||1<=n&&n==(l.colspan||1)||(t.PARENT_COL_INDEX=a,l.CHILD_COLS.push(t),n+=parseInt(1td').filter('[data-field="'+e+'"]')}}})).replace(/"/g,'""'),n.push(a='"'+a+'"')))}),d.push(n.join(","))}),r&&layui.each(r.dataTotal,function(e,t){c[t.field]||i.push(t.total+"\t")}),o.join(",")+"\r\n"+d.join("\r\n")+"\r\n"+i.join(","))),u.download=(a.title||n.title||"table_"+(n.index||""))+"."+l,document.body.appendChild(u),u.click(),document.body.removeChild(u)},x.getOptions=l,x.hideCol=function(e,l){var n=C(e);n&&("boolean"===layui.type(l)?n.eachCols(function(e,t){var a=t.key,i=n.col(a),t=t.parentKey;i.hide!=l&&(i=i.hide=l,n.elem.find('*[data-key="'+a+'"]')[i?"addClass":"removeClass"](L),n.setParentCol(i,t))}):layui.each(l,function(e,l){n.eachCols(function(e,t){var a,i;l.field===t.field&&(a=t.key,i=n.col(a),t=t.parentKey,"hide"in l&&i.hide!=l.hide&&(i=i.hide=!!l.hide,n.elem.find('*[data-key="'+a+'"]')[i?"addClass":"removeClass"](L),n.setParentCol(i,t)))})}),p("."+j).remove(),n.resize())},x.reload=function(e,t,a,i){if(l(e))return e=C(e),e.reload(t,a,i),k.call(e)},x.reloadData=function(){var a=p.extend([],arguments),i=(a[3]="reloadData",new RegExp("^("+["elem","id","cols","width","height","maxHeight","toolbar","defaultToolbar","className","css","totalRow","pagebar"].join("|")+")$"));return layui.each(a[1],function(e,t){i.test(e)&&delete a[1][e]}),x.reload.apply(null,a)},x.render=function(e){e=new n(e);return k.call(e)},x.clearCacheKey=function(e){return delete(e=p.extend({},e))[x.config.checkName],delete e[x.config.indexName],delete e[x.config.numbersName],delete e[x.config.disabledName],e},p(function(){x.init()}),e(T,x)});layui.define(["table"],function(e){"use strict";var E=layui.$,y=layui.form,j=layui.table,u=layui.hint(),a={},P={config:{},on:j.on,eachCols:j.eachCols,index:j.index,set:function(e){var t=this;return t.config=E.extend({},t.config,e),t},resize:j.resize,getOptions:j.getOptions,hideCol:j.hideCol},i=function(){var a=this,e=a.config,n=e.id||e.index;return{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){P.reloadData(n,e,t)}}},L=function(e){var t=i.that[e];return t||u.error(e?"The treeTable instance with ID '"+e+"' not found":"ID argument required"),t||null},B="layui-hide",F=".layui-table-main",q=".layui-table-fixed-l",Y=".layui-table-fixed-r",p="layui-table-tree",H="LAY_DATA_INDEX",h="LAY_DATA_INDEX_HISTORY",f="LAY_PARENT_INDEX",s="LAY_CHECKBOX_HALF",R="LAY_EXPAND",X="LAY_HAS_EXPANDED",V="LAY_ASYNC_STATUS",t=function(e){var t=this;t.index=++P.index,t.config=E.extend(!0,{},t.config,P.config,e),t.init(),t.render()},c=function(n,i,e){var l=j.cache[n];layui.each(e||l,function(e,t){var a=t[H];-1!==a.indexOf("-")&&(l[a]=t),t[i]&&c(n,i,t[i])})},l=function(i,a,e){var l=L(i),t=E.extend(!0,{},l.getOptions(),a),n=t.tree,d=n.customName.children,r=(delete a.hasNumberCol,delete a.hasChecboxCol,delete a.hasRadioCol,j.eachCols(null,function(e,t){"numbers"===t.type?a.hasNumberCol=!0:"checkbox"===t.type?a.hasChecboxCol=!0:"radio"===t.type&&(a.hasRadioCol=!0)},t.cols),a.parseData),o=a.done;t.url?e&&(!r||r.mod)||(a.parseData=function(){var e=this,t=arguments,a=t[0],t=("function"===layui.type(r)&&(a=r.apply(e,t)||t[0]),e.response.dataName);return n.data.isSimpleData&&!n["async"].enable&&(a[t]=l.flatToTree(a[t])),e.autoSort&&e.initSort&&e.initSort.type&&layui.sort(a[t],e.initSort.field,"desc"===e.initSort.type,!0),l.initData(a[t]),a},a.parseData.mod=!0):(a.data=a.data||[],n.data.isSimpleData&&(a.data=l.flatToTree(a.data)),a.initSort&&a.initSort.type&&layui.sort(a.data,a.initSort.field,"desc"===a.initSort.type,!0),l.initData(a.data)),e&&(!o||o.mod)||(a.done=function(){var e,t=arguments,a=this.elem.next(),n=(l.updateStatus(null,{LAY_HAS_EXPANDED:!1}),c(i,d),a.find('[name="layTableCheckbox"][lay-filter="layTableAllChoose"]'));if(n.length&&(e=P.checkStatus(i),n.prop({checked:e.isAll&&e.data.length,indeterminate:!e.isAll&&e.data.length})),l.renderTreeTable(a),"function"===layui.type(o))return o.apply(this,t)},a.done.mod=!0)};t.prototype.init=function(){var e=this.config,t=j.render(E.extend({},e,{data:[],url:"",done:null})),a=t.config.id;(i.that[a]=this).tableIns=t,l(a,e)},t.prototype.config={tree:{customName:{children:"children",isParent:"isParent",name:"name",id:"id",pid:"parentId"},view:{indent:14,flexIconClose:'',flexIconOpen:'',showIcon:!0,icon:"",iconClose:'',iconOpen:'',iconLeaf:'',showFlexIconIfNotParent:!1,dblClickExpand:!0},data:{isSimpleData:!1,rootPid:null},"async":{enable:!1,url:"",type:null,contentType:null,headers:null,where:null,autoParam:[]},callback:{beforeExpand:null,onExpand:null}}},t.prototype.getOptions=function(){return this.tableIns?j.getOptions(this.tableIns.config.id):this.config},t.prototype.flatToTree=function(e){var a,n,i,t,l,d=this.getOptions(),r=d.tree,o=r.customName,d=d.id;return e=e||j.cache[d],d=e,a=o.id,n=o.pid,i=o.children,t=r.data.rootPid,a=a||"id",n=n||"parentId",i=i||"children",l={},layui.each(d,function(e,t){l[t[a]]=E.extend({},t),l[t[a]][i]=[]}),layui.each(l,function(e,t){t[n]&&l[t[n]]&&l[t[n]][i].push(t)}),Object.values(l).filter(function(e){return t?e[n]===t:!e[n]})},t.prototype.treeToFlat=function(e,n,i){var l=this,d=l.getOptions().tree.customName,r=d.children,o=d.pid,c=[];return layui.each(e,function(e,t){var e=(i?i+"-":"")+e,a=E.extend({},t);a[r]=null,a[o]=t[o]||n,c.push(a),c=c.concat(l.treeToFlat(t[r],t[d.id],e))}),c},t.prototype.getNodeDataByIndex=function(a,e,t){var n=this.getOptions(),i=n.tree,l=n.id,d=j.cache[l][a];if("delete"!==t&&d)return E.extend(d,t),e?E.extend({},d):d;for(var d=this.getTableData(),r=(a+="").split("-"),o=d,c=n.url||1'),E.ajax({type:S||"get",url:A,contentType:I,data:N,dataType:C||"json",jsonpCallback:_,headers:D||{},success:function(e){y[V]="success",(e="function"==typeof T?T.call(o,e)||e:e)[k.statusName]!=k.statusCode?(y[V]="error",g.html('')):(y[f.children]=e[k.dataName],c.initData(y[f.children],y[H]),U(t,!0,!p&&n,i,l))},error:function(e,t){y[V]="error","function"==typeof o.error&&o.error(e,t)}}),x;y[R]=h,m=y[X]=!0,v.length&&(!o.initSort||o.url&&!o.autoSort||((b=o.initSort).type?layui.sort(v,b.field,"desc"===b.type,!0):layui.sort(v,j.config.indexName,null,!0)),c.initData(y[f.children],y[H]),S=j.getTrHtml(r,v,null,null,e),O={trs:E(S.trs.join("")),trs_fixed:E(S.trs_fixed.join("")),trs_fixed_r:E(S.trs_fixed_r.join(""))},w=(e.split("-").length-1||0)+1,layui.each(v,function(e,t){O.trs.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":w}),O.trs_fixed.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":w}),O.trs_fixed_r.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":w})}),d.find(F).find('tbody tr[lay-data-index="'+e+'"]').after(O.trs),d.find(q).find('tbody tr[lay-data-index="'+e+'"]').after(O.trs_fixed),d.find(Y).find('tbody tr[lay-data-index="'+e+'"]').after(O.trs_fixed_r),layui.each(O,function(e,t){c.renderTreeTable(t,w)}),n&&!p&&layui.each(v,function(e,t){U({dataIndex:t[H],trElem:d.find('tr[lay-data-index="'+t[H]+'"]').first(),tableViewElem:d,tableId:r,options:o},a,n,i,l)}))}else y[R]=h,n&&!p?(layui.each(v,function(e,t){U({dataIndex:t[H],trElem:d.find('tr[lay-data-index="'+t[H]+'"]').first(),tableViewElem:d,tableId:r,options:o},a,n,i,l)}),d.find(v.map(function(e,t,a){return'tr[lay-data-index="'+e[H]+'"]'}).join(",")).addClass(B)):(A=c.treeToFlat(v,y[f.id],e),d.find(A.map(function(e,t,a){return'tr[lay-data-index="'+e[H]+'"]'}).join(",")).addClass(B));return z(r,function(){P.resize(r)},25)(),l&&"loading"!==y[V]&&(I=u.callback.onExpand,"function"===layui.type(I)&&I(r,y,a)),x},d=(P.expandNode=function(e,t){var a,n,i,e=L(e);if(e)return a=(t=t||{}).index,n=t.expandFlag,i=t.inherit,t=t.callbackFlag,e=e.getOptions().elem.next(),U({trElem:e.find('tr[lay-data-index="'+a+'"]').first()},n,i,null,t)},P.expandAll=function(a,e){if("boolean"!==layui.type(e))return u.error("expandAll \u7684\u5c55\u5f00\u72b6\u6001\u53c2\u6570\u53ea\u63a5\u6536true/false");var t=L(a);if(t){var n=t.getOptions(),i=n.tree,l=n.elem.next(),d=i.customName.isParent;if(e){n=P.getData(a,!0);if(i["async"].enable){var r=!0;if(layui.each(n,function(e,t){if(t[d]&&!t[V])return!(r=!1)}),!r)return void layui.each(P.getData(a),function(e,t){P.expandNode(a,{index:t[H],expandFlag:!0,inherit:!0})})}var o,c=!0;layui.each(n,function(e,t){if(!t[X])return!(c=!1)}),c?(t.updateStatus(null,function(e){e[d]&&(e[R]=!0)}),l.find('tbody tr[data-level!="0"]').removeClass(B),l.find(".layui-table-tree-flexIcon").html(i.view.flexIconOpen),i.view.showIcon&&l.find(".layui-table-tree-nodeIcon:not(.layui-table-tree-iconCustom,.layui-table-tree-iconLeaf)").html(i.view.iconOpen)):(t.updateStatus(null,function(e){e[d]&&(e[R]=!0,e[X]=!0)}),e=j.getTrHtml(a,n),o={trs:E(e.trs.join("")),trs_fixed:E(e.trs_fixed.join("")),trs_fixed_r:E(e.trs_fixed_r.join(""))},layui.each(n,function(e,t){var a=t[H].split("-").length-1;o.trs.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":a}),o.trs_fixed.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":a}),o.trs_fixed_r.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":a})}),layui.each(["main","fixed-l","fixed-r"],function(e,t){l.find(".layui-table-"+t+" tbody").html(o[["trs","trs_fixed","trs_fixed_r"][e]])}),t.renderTreeTable(l,0,!1))}else t.updateStatus(null,function(e){e[d]&&(e[R]=!1)}),l.find('.layui-table-box tbody tr[data-level!="0"]').addClass(B),l.find(".layui-table-tree-flexIcon").html(i.view.flexIconClose),i.view.showIcon&&l.find(".layui-table-tree-nodeIcon:not(.layui-table-tree-iconCustom,.layui-table-tree-iconLeaf)").html(i.view.iconClose);P.resize(a)}},t.prototype.renderTreeTable=function(e,t,a){var n=this.getOptions(),i=n.elem.next(),l=(i.addClass(p),n.id),d=n.tree||{},r=(d.data,d.view||{}),d=d.customName||{},o=d.isParent,c=i.attr("lay-filter"),u=this,f=((t=t||0)||(i.find(".layui-table-body tr:not([data-level])").attr("data-level",t),layui.each(j.cache[l],function(e,t){i.find('.layui-table-main tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[H]),i.find('.layui-table-fixed-l tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[H]),i.find('.layui-table-fixed-r tbody tr[data-level="0"]:eq('+e+")").attr("lay-data-index",t[H])})),{}),t=d.name,s=r.indent||14;layui.each(e.find('td[data-field="'+t+'"]'),function(e,t){var a,n=(t=E(t)).closest("tr"),i=t.children(".layui-table-cell");i.hasClass("layui-table-tree-item")||(i.addClass("layui-table-tree-item"),(i=n.attr("lay-data-index"))&&((a=u.getNodeDataByIndex(i))[R]&&(f[i]=!0),i=t.find("div.layui-table-cell").html(),t.find("div.layui-table-cell").html(['
            ',a[R]?r.flexIconOpen:r.flexIconClose,"
            ",r.showIcon?'
            '+(a.icon||r.icon||(a[o]?a[R]?r.iconOpen:r.iconClose:r.iconLeaf)||"")+"
            ":"",i].join("")).find(".layui-table-tree-flexIcon").on("click",function(e){layui.stope(e),U({trElem:n},null,null,null,!0)})))}),!1!==a&&layui.each(f,function(e,t){e=i.find('tr[lay-data-index="'+e+'"]');e.find(".layui-table-tree-flexIcon").html(r.flexIconOpen),U({trElem:e.first()},!0)}),n.hasNumberCol&&this.formatNumber(l),y.render(null,c)},t.prototype.formatNumber=function(e){var t=this;clearTimeout(e),a[e]=setTimeout(function(){var n,e,i,l;e=(n=t).getOptions(),i=e.elem.next(),l=0,layui.each(n.treeToFlat(j.cache[e.id]),function(e,t){var a;layui.isArray(t)||((a=n.getNodeDataByIndex(t[H])).LAY_NUM=++l,i.find('tr[lay-data-index="'+t[H]+'"] .laytable-cell-numbers').html(a.LAY_NUM))})},10)},t.prototype.render=function(e){var t=this;t.tableIns=j["reloadData"===e?"reloadData":"reload"](t.tableIns.config.id,E.extend(!0,{},t.config)),t.config=t.tableIns.config},t.prototype.reload=function(e,t,a){var n=this;e=e||{},delete n.haveInit,layui.each(e,function(e,t){"array"===layui.type(t)&&delete n.config[e]}),l(n.config.id,e,!0),n.config=E.extend(t,{},n.config,e),n.render(a)},P.reloadData=function(){var e=E.extend(!0,[],arguments);return e[3]="reloadData",P.reload.apply(null,e)},function(e,a,n){var i=[];return layui.each(e,function(e,t){"function"===layui.type(a)?a(t):E.extend(t,a),i.push(E.extend({},t)),i=i.concat(d(t[n],a,n))}),i}),r=(t.prototype.updateStatus=function(e,t){var a=this.getOptions(),n=a.tree;return e=e||j.cache[a.id],d(e,t,n.customName.children)},t.prototype.getTableData=function(){var e=this.getOptions();return e.url?j.cache[e.id]:e.data},P.updateStatus=function(e,t,a){var e=L(e),n=e.getOptions();return a=a||(n.url?j.cache[n.id]:n.data),e.updateStatus(a,t)},P.sort=function(e){var t,a,n,i,l=L(e);l&&(a=(t=l.getOptions()).initSort,t.url?t.autoSort&&(n=l.initData(),(i={})[t.response.dataName]=n,"function"==typeof t.done&&t.done(i,l.page,l.count)):(a.type?layui.sort(t.data,a.field,"desc"===a.type,!0):layui.sort(t.data,j.config.indexName,null,!0),l.initData(t.data),P.reloadData(e)))},function(n){var t=n.config.id,i=L(t),a=n.data=P.getNodeDataByIndex(t,n.index),l=a[H],d=(n.dataIndex=l,n.update);n.update=function(){var e=arguments,t=(E.extend(i.getNodeDataByIndex(l),e[0]),d.apply(this,e)),a=n.config.tree.customName.name;return a in e[0]&&n.tr.find('td[data-field="'+a+'"]').children("div.layui-table-cell").removeClass("layui-table-tree-item"),i.renderTreeTable(n.tr,n.tr.attr("data-level"),!1),t},n.del=function(){P.removeNode(t,a)},n.setRowChecked=function(e){P.setRowChecked(t,{index:a,checked:e})}}),o=(P.updateNode=function(e,a,t){var n,i,l,d,r,o=L(e);o&&((d=o.getOptions()).tree,d=(n=d.elem.next()).find('tr[lay-data-index="'+a+'"]'),i=d.attr("data-index"),l=d.attr("data-level"),t&&(d=o.getNodeDataByIndex(a,!1,t),r=j.getTrHtml(e,[d]),layui.each(["main","fixed-l","fixed-r"],function(e,t){n.find(".layui-table-"+t+' tbody tr[lay-data-index="'+a+'"]').replaceWith(E(r[["trs","trs_fixed","trs_fixed_r"][e]].join("")).attr({"data-index":i,"lay-data-index":a,"data-level":l}))}),o.renderTreeTable(n.find('tr[lay-data-index="'+a+'"]'),l)))},P.removeNode=function(e,t){var a,n,i,l,d,r=L(e);r&&(d=(a=r.getOptions()).tree,n=a.elem.next(),i=[],t=r.getNodeDataByIndex("string"===layui.type(t)?t:t[H],!1,"delete"),l=r.getNodeDataByIndex(t[f]),r.updateCheckStatus(l,!0),l=r.treeToFlat([t],t[d.customName.pid],t[f]),layui.each(l,function(e,t){i.push('tr[lay-data-index="'+t[H]+'"]')}),n.find(i.join(",")).remove(),d=r.initData(),layui.each(r.treeToFlat(d),function(e,t){t[h]&&t[h]!==t[H]&&n.find('tr[lay-data-index="'+t[h]+'"]').attr({"data-index":t[H],"lay-data-index":t[H]})}),layui.each(j.cache[e],function(e,t){n.find('tr[data-level="0"][lay-data-index="'+t[H]+'"]').attr("data-index",e)}),a.hasNumberCol&&r.formatNumber(e))},P.addNodes=function(e,t){var a,n,i,l,d,r,o,c,u,f,s,y=L(e);if(y)return u=y.getOptions(),f=u.tree,a=u.elem.next(),s=(t=t||{}).parentIndex,i=t.index,l=t.data,t=t.focus,n=(s="number"===layui.type(s)?s.toString():s)?y.getNodeDataByIndex(s):null,i="number"===layui.type(i)?i:-1,l=E.extend(!0,[],layui.isArray(l)?l:[l]),y.getTableData(),n?(d=f.customName.isParent,f=f.customName.children,n[d]=!0,c=(c=n[f])?(r=c.splice(-1===i?c.length:i),n[f]=c.concat(l,r)):n[f]=l,y.updateStatus(c,function(e){e[d]&&(e[X]=!1)}),f=y.treeToFlat(c),a.find(f.map(function(e){return'tr[lay-data-index="'+e[H]+'"]'}).join(",")).remove(),y.initData(),n[X]=!1,n[V]="local",U({trElem:a.find('tr[lay-data-index="'+s+'"]')},!0)):(r=j.cache[e].splice(-1===i?j.cache[e].length:i),j.cache[e]=j.cache[e].concat(l,r),u.url||(u.page?(c=u.page,u.data.splice.apply(u.data,[c.limit*(c.curr-1),c.limit].concat(j.cache[e]))):u.data=j.cache[e]),y.initData(),f=j.getTrHtml(e,l),o={trs:E(f.trs.join("")),trs_fixed:E(f.trs_fixed.join("")),trs_fixed_r:E(f.trs_fixed_r.join(""))},layui.each(l,function(e,t){o.trs.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":"0"}),o.trs_fixed.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":"0"}),o.trs_fixed_r.eq(e).attr({"data-index":t[H],"lay-data-index":t[H],"data-level":"0"})}),s=parseInt(l[0][H])-1,c=a.find(F),u=a.find(q),f=a.find(Y),-1==s?(c.find('tr[data-level="0"][data-index="0"]').before(o.trs),u.find('tr[data-level="0"][data-index="0"]').before(o.trs_fixed),f.find('tr[data-level="0"][data-index="0"]').before(o.trs_fixed_r)):-1===i?(c.find("tbody").append(o.trs),u.find("tbody").append(o.trs_fixed),f.find("tbody").append(o.trs_fixed_r)):(s=r[0][h],c.find('tr[data-level="0"][data-index="'+s+'"]').before(o.trs),u.find('tr[data-level="0"][data-index="'+s+'"]').before(o.trs_fixed),f.find('tr[data-level="0"][data-index="'+s+'"]').before(o.trs_fixed_r)),layui.each(j.cache[e],function(e,t){a.find('tr[data-level="0"][lay-data-index="'+t[H]+'"]').attr("data-index",e)}),y.renderTreeTable(a.find(l.map(function(e,t,a){return'tr[lay-data-index="'+e[H]+'"]'}).join(",")))),y.updateCheckStatus(n,!0),P.resize(e),t&&a.find(F).find('tr[lay-data-index="'+l[0][H]+'"]').get(0).scrollIntoViewIfNeeded(),l},P.checkStatus=function(e){var t,a;if(L(e))return t=P.getData(e,!0).filter(function(e,t,a){return e[j.config.checkName]}),a=!0,layui.each(j.cache[e],function(e,t){if(!t[j.config.checkName])return!(a=!1)}),{data:t,isAll:a}},P.on("sort",function(e){var e=e.config,t=e.elem.next(),e=e.id;t.hasClass(p)&&P.sort(e)}),P.on("row",function(e){e.config.elem.next().hasClass(p)&&r(e)}),P.on("rowDouble",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(p)&&(r(e),(t.tree||{}).view.dblClickExpand&&U({trElem:e.tr.first()},null,null,null,!0))}),P.on("rowContextmenu",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(p)&&r(e)}),P.on("tool",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(p)&&r(e)}),P.on("edit",function(e){var t=e.config,a=t.elem.next();t.id;a.hasClass(p)&&(r(e),e.field===t.tree.customName.name&&((a={})[e.field]=e.value,e.update(a)))}),P.on("radio",function(e){var t=e.config,a=t.elem.next(),t=t.id;a.hasClass(p)&&(a=L(t),r(e),o.call(a,e.tr,e.checked))}),t.prototype.updateCheckStatus=function(e,t){var a=this.getOptions(),n=(a.tree,a.id),i=a.elem.next(),l=j.config.checkName,d=(e&&(a=this.updateParentCheckStatus(e,t),layui.each(a,function(e,t){y.render(i.find('tr[lay-data-index="'+t[H]+'"] input[name="layTableCheckbox"]:not(:disabled)').prop({checked:t[l],indeterminate:t[s]}))})),!0),r=!1;return layui.each(j.cache[n],function(e,t){(t[l]||t[s])&&(r=!0),t[l]||(d=!1)}),r=r&&!d,y.render(i.find('input[name="layTableCheckbox"][lay-filter="layTableAllChoose"]').prop({checked:d,indeterminate:r})),d},t.prototype.updateParentCheckStatus=function(a,n){var e=this.getOptions(),t=e.tree,e=e.id,i=j.config.checkName,t=t.customName.children,l=[];return a[s]=!1,n?a[t].length?layui.each(a[t],function(e,t){if(!t[i])return n=!1,a[s]=!0}):n=!1:layui.each(a[t],function(e,t){if(t[i]||t[s])return a[s]=!0}),a[i]=n,l.push(E.extend({},a)),l=a[f]?l.concat(this.updateParentCheckStatus(j.cache[e][a[f]],n)):l},function(e,t,a){var n=this,i=n.getOptions(),l=i.id,d=i.elem.next(),r=(e.length?e:d).find(".laytable-cell-radio, .laytable-cell-checkbox").children("input").last(),o="radio"===r.attr("type");if(a){a=function(){var e=function(e){layui.stope(e)};r.parent().on("click",e),r.next().click(),r.parent().off("click",e)};o?t&&!r.prop("checked")&&a():"boolean"===layui.type(t)&&r.prop("checked")===t||a()}else{var c,a=n.getNodeDataByIndex(e.attr("data-index")),u=j.config.checkName;if(!o)return i.tree.customName.isParent,t="boolean"===layui.type(t)?t:!a[u],o=n.updateStatus(a?[a]:j.cache[l],function(e){e[j.config.disabledName]||(e[u]=t,e[s]=!1)}),y.render(d.find(o.map(function(e){return'tr[lay-data-index="'+e[H]+'"] input[name="layTableCheckbox"]:not(:disabled)'}).join(",")).prop({checked:t,indeterminate:!1})),a&&a[f]&&(c=n.getNodeDataByIndex(a[f])),n.updateCheckStatus(c,t);a&&(n.updateStatus(null,function(e){e[u]&&(e[u]=!1,y.render(d.find('tr[lay-data-index="'+e[H]+'"] input[type="radio"][lay-type="layTableRadio"]').prop("checked",!1)))}),a[u]=t,y.render(e.find('input[type="radio"][lay-type="layTableRadio"]').prop("checked",t)))}});P.on("checkbox",function(e){var t=e.config,a=t.elem.next(),t=t.id;a.hasClass(p)&&(a=L(t),t=e.checked,r(e),e.isAll=o.call(a,e.tr,t))}),P.setRowChecked=function(e,t){var a,n,i,l,d,r=L(e);r&&(a=r.getOptions().elem.next(),i=(t=t||{}).index,n=t.checked,t=t.callbackFlag,i="string"===layui.type(i)?i:i[H],(l=r.getNodeDataByIndex(i))&&((d=a.find('tr[lay-data-index="'+i+'"]')).length||(P.expandNode(e,{index:l[f],expandFlag:!0}),d=a.find('tr[lay-data-index="'+i+'"]')),o.call(r,d,n,t)))},P.checkAllNodes=function(e,t){var a,e=L(e);e&&(a=e.getOptions().elem.next(),o.call(e,a.find('tr[data-index="NONE"]'),!!t))},P.getData=function(e,t){var a=[];return layui.each(E.extend(!0,[],j.cache[e]||[]),function(e,t){a.push(t)}),t?L(e).treeToFlat(a):a},i.that={},P.reload=function(e,t,a,n){if(a=!1!==a,L(e).config)return e=L(e),e.reload(t,a,n),i.call(e)},P.render=function(e){e=new t(e);return i.call(e)},e("treeTable",P)});layui.define("form",function(e){"use strict";var u=layui.$,i=layui.form,p=layui.layer,n="tree",a={config:{},index:layui[n]?layui[n].index+1e4:0,set:function(e){var i=this;return i.config=u.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,n,e,i)}},t=function(){var i=this,e=i.config,n=e.id||i.index;return t.that[n]=i,{config:t.config[n]=e,reload:function(e){i.reload.call(i,e)},getChecked:function(){return i.getChecked.call(i)},setChecked:function(e){return i.setChecked.call(i,e)}}},y="layui-hide",d="layui-disabled",f="layui-tree-set",C="layui-tree-iconClick",k="layui-icon-addition",v="layui-icon-subtraction",m="layui-tree-entry",x="layui-tree-main",b="layui-tree-txt",g="layui-tree-pack",w="layui-tree-spread",N="layui-tree-setLineShort",T="layui-tree-showLine",L="layui-tree-lineExtend",l=function(e){var i=this;i.index=++a.index,i.config=u.extend({},i.config,a.config,e),i.render()};l.prototype.config={data:[],showCheckbox:!1,showLine:!0,accordion:!1,onlyIconControl:!1,isJump:!1,edit:!1,text:{defaultNodeName:"\u672a\u547d\u540d",none:"\u65e0\u6570\u636e"}},l.prototype.reload=function(e){var n=this;layui.each(e,function(e,i){"array"===layui.type(i)&&delete n.config[e]}),n.config=u.extend(!0,{},n.config,e),n.render()},l.prototype.render=function(){var e=this,i=e.config,n=(e.checkids=[],u('
            ')),a=(e.tree(n),i.elem=u(i.elem));if(a[0]){if(e.key=i.id||e.index,e.elem=n,e.elemNone=u('
            '+i.text.none+"
            "),a.html(e.elem),0==e.elem.find(".layui-tree-set").length)return e.elem.append(e.elemNone);i.showCheckbox&&e.renderForm("checkbox"),e.elem.find(".layui-tree-set").each(function(){var e=u(this);e.parent(".layui-tree-pack")[0]||e.addClass("layui-tree-setHide"),!e.next()[0]&&e.parents(".layui-tree-pack").eq(1).hasClass("layui-tree-lineExtend")&&e.addClass(N),e.next()[0]||e.parents(".layui-tree-set").eq(0).next()[0]||e.addClass(N)}),e.events()}},l.prototype.renderForm=function(e){i.render(e,"LAY-tree-"+this.index)},l.prototype.tree=function(l,e){var r=this,c=r.config,e=e||c.data;layui.each(e,function(e,i){var n=i.children&&0"),t=u(['
            ','
            ','
            ',c.showLine?n?'':'':'',c.showCheckbox?'':"",c.isJump&&i.href?''+(i.title||i.label||c.text.defaultNodeName)+"":''+(i.title||i.label||c.text.defaultNodeName)+"","
            ",function(){if(!c.edit)return"";var n={add:'',update:'',del:''},a=['
            '];return!0===c.edit&&(c.edit=["update","del"]),"object"==typeof c.edit?(layui.each(c.edit,function(e,i){a.push(n[i]||"")}),a.join("")+"
            "):void 0}(),"
            "].join(""));n&&(t.append(a),r.tree(a,i.children)),l.append(t),t.prev("."+f)[0]&&t.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),n||t.parent(".layui-tree-pack").addClass("layui-tree-lineExtend"),r.spread(t,i),c.showCheckbox&&(i.checked&&r.checkids.push(i.id),r.checkClick(t,i)),c.edit&&r.operate(t,i)})},l.prototype.spread=function(a,e){var t=this.config,i=a.children("."+m),n=i.children("."+x),l=i.find("."+C),i=i.find("."+b),r=t.onlyIconControl?l:n,c="";r.on("click",function(e){var i=a.children("."+g),n=(r.children(".layui-icon")[0]?r:r.find(".layui-tree-icon")).children(".layui-icon");i[0]?a.hasClass(w)?(a.removeClass(w),i.slideUp(200),n.removeClass(v).addClass(k)):(a.addClass(w),i.slideDown(200),n.addClass(v).removeClass(k),t.accordion&&((i=a.siblings("."+f)).removeClass(w),i.children("."+g).slideUp(200),i.find(".layui-tree-icon").children(".layui-icon").removeClass(v).addClass(k))):c="normal"}),i.on("click",function(){u(this).hasClass(d)||(c=a.hasClass(w)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:a,state:c,data:e}))})},l.prototype.setCheckbox=function(e,i,n){this.config;var t,l=n.prop("checked");n.prop("disabled")||("object"!=typeof i.children&&!e.find("."+g)[0]||e.find("."+g).find('input[same="layuiTreeCheck"]').each(function(){this.disabled||(this.checked=l)}),(t=function(e){var i,n,a;e.parents("."+f)[0]&&(n=(e=e.parent("."+g)).parent(),a=e.prev().find('input[same="layuiTreeCheck"]'),l?a.prop("checked",l):(e.find('input[same="layuiTreeCheck"]').each(function(){this.checked&&(i=!0)}),i||a.prop("checked",!1)),t(n))})(e),this.renderForm("checkbox"))},l.prototype.checkClick=function(n,a){var t=this,l=t.config;n.children("."+m).children("."+x).on("click",'input[same="layuiTreeCheck"]+',function(e){layui.stope(e);var e=u(this).prev(),i=e.prop("checked");e.prop("disabled")||(t.setCheckbox(n,a,e),l.oncheck&&l.oncheck({elem:n,checked:i,data:a}))})},l.prototype.operate=function(c,d){var s=this,o=s.config,e=c.children("."+m),h=e.children("."+x);e.children(".layui-tree-btnGroup").on("click",".layui-icon",function(e){layui.stope(e);var i,e=u(this).data("type"),a=c.children("."+g),t={data:d,type:e,elem:c};if("add"==e){a[0]||(o.showLine?(h.find("."+C).addClass("layui-tree-icon"),h.find("."+C).children(".layui-icon").addClass(k).removeClass("layui-icon-file")):h.find(".layui-tree-iconArrow").removeClass(y),c.append('
            '));var n,l=o.operate&&o.operate(t),r={};if(r.title=o.text.defaultNodeName,r.id=l,s.tree(c.children("."+g),[r]),o.showLine&&(a[0]?(a.hasClass(L)||a.addClass(L),c.find("."+g).each(function(){u(this).children("."+f).last().addClass(N)}),(a.children("."+f).last().prev().hasClass(N)?a.children("."+f).last().prev():a.children("."+f).last()).removeClass(N),!c.parent("."+g)[0]&&c.next()[0]&&a.children("."+f).last().removeClass(N)):(l=c.siblings("."+f),n=1,r=c.parent("."+g),layui.each(l,function(e,i){u(i).children("."+g)[0]||(n=0)}),1==n?(l.children("."+g).addClass(T),l.children("."+g).children("."+f).removeClass(N),c.children("."+g).addClass(T),r.removeClass(L),r.children("."+f).last().children("."+g).children("."+f).last().addClass(N)):c.children("."+g).children("."+f).addClass(N))),!o.showCheckbox)return;h.find('input[same="layuiTreeCheck"]')[0].checked&&(c.children("."+g).children("."+f).last().find('input[same="layuiTreeCheck"]')[0].checked=!0),s.renderForm("checkbox")}else"update"==e?(l=h.children("."+b).html(),h.children("."+b).html(""),h.append(''),h.children(".layui-tree-editInput").val(l).focus(),i=function(e){var i=(i=e.val().trim())||o.text.defaultNodeName;e.remove(),h.children("."+b).html(i),t.data.title=i,o.operate&&o.operate(t)},h.children(".layui-tree-editInput").blur(function(){i(u(this))}),h.children(".layui-tree-editInput").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),i(u(this)))})):p.confirm('\u786e\u8ba4\u5220\u9664\u8be5\u8282\u70b9 "'+(d.title||"")+'" \u5417\uff1f',function(e){if(o.operate&&o.operate(t),t.status="remove",p.close(e),!c.prev("."+f)[0]&&!c.next("."+f)[0]&&!c.parent("."+g)[0])return c.remove(),void s.elem.append(s.elemNone);var l,n,i;c.siblings("."+f).children("."+m)[0]?(o.showCheckbox&&(l=function(e){var i,n,a,t;e.parents("."+f)[0]&&(i=e.siblings("."+f).children("."+m),n=(e=e.parent("."+g).prev()).find('input[same="layuiTreeCheck"]')[0],a=1,(t=0)==n.checked&&(i.each(function(e,i){i=u(i).find('input[same="layuiTreeCheck"]')[0];0!=i.checked||i.disabled||(a=0),i.disabled||(t=1)}),1==a&&1==t&&(n.checked=!0,s.renderForm("checkbox"),l(e.parent("."+f)))))})(c),o.showLine&&(e=c.siblings("."+f),n=1,i=c.parent("."+g),layui.each(e,function(e,i){u(i).children("."+g)[0]||(n=0)}),1==n?(a[0]||(i.removeClass(L),e.children("."+g).addClass(T),e.children("."+g).children("."+f).removeClass(N)),(c.next()[0]?i.children("."+f).last():c.prev()).children("."+g).children("."+f).last().addClass(N),c.next()[0]||c.parents("."+f)[1]||c.parents("."+f).eq(0).next()[0]||c.prev("."+f).addClass(N)):!c.next()[0]&&c.hasClass(N)&&c.prev().addClass(N))):(e=c.parent("."+g).prev(),o.showLine?(e.find("."+C).removeClass("layui-tree-icon"),e.find("."+C).children(".layui-icon").removeClass(v).addClass("layui-icon-file"),(i=e.parents("."+g).eq(0)).addClass(L),i.children("."+f).each(function(){u(this).children("."+g).children("."+f).last().addClass(N)})):e.find(".layui-tree-iconArrow").addClass(y),c.parents("."+f).eq(0).removeClass(w),c.parent("."+g).remove()),c.remove()})})},l.prototype.events=function(){var i=this,t=i.config;i.elem.find(".layui-tree-checkedFirst");i.setChecked(i.checkids),i.elem.find(".layui-tree-search").on("keyup",function(){var e=u(this),n=e.val(),e=e.nextAll(),a=[];e.find("."+b).each(function(){var i,e=u(this).parents("."+m);-1!=u(this).html().indexOf(n)&&(a.push(u(this).parent()),(i=function(e){e.addClass("layui-tree-searchShow"),e.parent("."+g)[0]&&i(e.parent("."+g).parent("."+f))})(e.parent("."+f)))}),e.find("."+m).each(function(){var e=u(this).parent("."+f);e.hasClass("layui-tree-searchShow")||e.addClass(y)}),0==e.find(".layui-tree-searchShow").length&&i.elem.append(i.elemNone),t.onsearch&&t.onsearch({elem:a})}),i.elem.find(".layui-tree-search").on("keydown",function(){u(this).nextAll().find("."+m).each(function(){u(this).parent("."+f).removeClass("layui-tree-searchShow "+y)}),u(".layui-tree-emptyText")[0]&&u(".layui-tree-emptyText").remove()})},l.prototype.getChecked=function(){var e=this.config,i=[],n=[],t=(this.elem.find(".layui-form-checked").each(function(){i.push(u(this).prev()[0].value)}),function(e,a){layui.each(e,function(e,n){layui.each(i,function(e,i){if(n.id==i)return delete(i=u.extend({},n)).children,a.push(i),n.children&&(i.children=[],t(n.children,i.children)),!0})})});return t(u.extend({},e.data),n),n},l.prototype.setChecked=function(l){this.config;this.elem.find("."+f).each(function(e,i){var n=u(this).data("id"),a=u(i).children("."+m).find('input[same="layuiTreeCheck"]'),t=a.next();if("number"==typeof l){if(n.toString()==l.toString())return a[0].checked||t.click(),!1}else"object"==typeof l&&layui.each(l,function(e,i){if(i.toString()==n.toString()&&!a[0].checked)return t.click(),!0})})},t.that={},t.config={},a.reload=function(e,i){e=t.that[e];return e.reload(i),t.call(e)},a.getChecked=function(e){return t.that[e].getChecked()},a.setChecked=function(e,i){return t.that[e].setChecked(i)},a.render=function(e){e=new l(e);return t.call(e)},e(n,a)});layui.define(["laytpl","form"],function(e){"use strict";var s=layui.$,n=layui.laytpl,t=layui.form,a="transfer",i={config:{},index:layui[a]?layui[a].index+1e4:0,set:function(e){var t=this;return t.config=s.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,a,e,t)}},l=function(){var t=this,e=t.config,a=e.id||t.index;return l.that[a]=t,{config:l.config[a]=e,reload:function(e){t.reload.call(t,e)},getData:function(){return t.getData.call(t)}}},d="layui-hide",h="layui-btn-disabled",r="layui-none",c="layui-transfer-box",u="layui-transfer-header",o="layui-transfer-search",f="layui-transfer-data",y=function(e){return['
            ','
            ','","
            ","{{# if(d.data.showSearch){ }}",'","{{# } }}",'
              ',"
              "].join("")},p=['
              ',y({index:0,checkAllName:"layTransferLeftCheckAll"}),'
              ','",'","
              ",y({index:1,checkAllName:"layTransferRightCheckAll"}),"
              "].join(""),v=function(e){var t=this;t.index=++i.index,t.config=s.extend({},t.config,i.config,e),t.render()};v.prototype.config={title:["\u5217\u8868\u4e00","\u5217\u8868\u4e8c"],width:200,height:360,data:[],value:[],showSearch:!1,id:"",text:{none:"\u65e0\u6570\u636e",searchNone:"\u65e0\u5339\u914d\u6570\u636e"}},v.prototype.reload=function(e){var t=this;t.config=s.extend({},t.config,e),t.render()},v.prototype.render=function(){var e=this,t=e.config,a=e.elem=s(n(p,{open:"{{",close:"}}"}).render({data:t,index:e.index})),i=t.elem=s(t.elem);i[0]&&(t.data=t.data||[],t.value=t.value||[],t.id="id"in t?t.id:elem.attr("id")||e.index,e.key=t.id,i.html(e.elem),e.layBox=e.elem.find("."+c),e.layHeader=e.elem.find("."+u),e.laySearch=e.elem.find("."+o),e.layData=a.find("."+f),e.layBtn=a.find(".layui-transfer-active .layui-btn"),e.layBox.css({width:t.width,height:t.height}),e.layData.css({height:(i=t.height-e.layHeader.outerHeight(),t.showSearch&&(i-=e.laySearch.outerHeight()),i-2)}),e.renderData(),e.events())},v.prototype.renderData=function(){var e=this,t=e.config,l=[{checkName:"layTransferLeftCheck",views:[]},{checkName:"layTransferRightCheck",views:[]}];e.parseData(function(a){var i=a.selected?1:0,n=["
            • ",'',"
            • "].join("");i?layui.each(t.value,function(e,t){t==a.value&&a.selected&&(l[i].views[e]=n)}):l[i].views.push(n),delete a.selected}),e.layData.eq(0).html(l[0].views.join("")),e.layData.eq(1).html(l[1].views.join("")),e.renderCheckBtn()},v.prototype.renderForm=function(e){t.render(e,"LAY-transfer-"+this.index)},v.prototype.renderCheckBtn=function(r){var c=this,o=c.config;r=r||{},c.layBox.each(function(e){var t=s(this),a=t.find("."+f),t=t.find("."+u).find('input[type="checkbox"]'),i=a.find('input[type="checkbox"]'),n=0,l=!1;i.each(function(){var e=s(this).data("hide");(this.checked||this.disabled||e)&&n++,this.checked&&!e&&(l=!0)}),t.prop("checked",l&&n===i.length),c.layBtn.eq(e)[l?"removeClass":"addClass"](h),r.stopNone||(i=a.children("li:not(."+d+")").length,c.noneView(a,i?"":o.text.none))}),c.renderForm("checkbox")},v.prototype.noneView=function(e,t){var a=s('

              '+(t||"")+"

              ");e.find("."+r)[0]&&e.find("."+r).remove(),t.replace(/\s/g,"")&&e.append(a)},v.prototype.setValue=function(){var e=this.config,t=[];return this.layBox.eq(1).find("."+f+' input[type="checkbox"]').each(function(){s(this).data("hide")||t.push(this.value)}),e.value=t,this},v.prototype.parseData=function(t){var i=this.config,n=[];return layui.each(i.data,function(e,a){a=("function"==typeof i.parseData?i.parseData(a):a)||a,n.push(a=s.extend({},a)),layui.each(i.value,function(e,t){t==a.value&&(a.selected=!0)}),t&&t(a)}),i.data=n,this},v.prototype.getData=function(e){var t=this.config,i=[];return this.setValue(),layui.each(e||t.value,function(e,a){layui.each(t.data,function(e,t){delete t.selected,a==t.value&&i.push(t)})}),i},v.prototype.transfer=function(e,t){var a,i=this,n=i.config,l=i.layBox.eq(e),r=[],t=(t?((a=(t=t).find('input[type="checkbox"]'))[0].checked=!1,l.siblings("."+c).find("."+f).append(t.clone()),t.remove(),r.push(a[0].value),i.setValue()):l.each(function(e){s(this).find("."+f).children("li").each(function(){var e=s(this),t=e.find('input[type="checkbox"]'),a=t.data("hide");t[0].checked&&!a&&(t[0].checked=!1,l.siblings("."+c).find("."+f).append(e.clone()),e.remove(),r.push(t[0].value)),i.setValue()})}),i.renderCheckBtn(),l.siblings("."+c).find("."+o+" input"));""!==t.val()&&t.trigger("keyup"),n.onchange&&n.onchange(i.getData(r),e)},v.prototype.events=function(){var n=this,l=n.config;n.elem.on("click",'input[lay-filter="layTransferCheckbox"]+',function(){var e=s(this).prev(),t=e[0].checked,a=e.parents("."+c).eq(0).find("."+f);e[0].disabled||("all"===e.attr("lay-type")&&a.find('input[type="checkbox"]').each(function(){this.disabled||(this.checked=t)}),setTimeout(function(){n.renderCheckBtn({stopNone:!0})},0))}),n.elem.on("dblclick","."+f+">li",function(e){var t=s(this),a=t.children('input[type="checkbox"]'),i=t.parent().parent();a[0].disabled||n.transfer(i.data("index"),t)}),n.layBtn.on("click",function(){var e=s(this),t=e.data("index");e.hasClass(h)||n.transfer(t)}),n.laySearch.find("input").on("keyup",function(){var i=this.value,e=s(this).parents("."+o).eq(0).siblings("."+f),t=e.children("li"),t=(t.each(function(){var e=s(this),t=e.find('input[type="checkbox"]'),a=t[0].title,a=("cs"!==l.showSearch&&(a=a.toLowerCase(),i=i.toLowerCase()),-1!==a.indexOf(i));e[a?"removeClass":"addClass"](d),t.data("hide",!a)}),n.renderCheckBtn(),t.length===e.children("li."+d).length);n.noneView(e,t?l.text.searchNone:"")})},l.that={},l.config={},i.reload=function(e,t){e=l.that[e];return e.reload(t),l.call(e)},i.getData=function(e){return l.that[e].getData()},i.render=function(e){e=new v(e);return l.call(e)},e(a,i)});layui.define(["jquery","lay"],function(e){"use strict";var a=layui.$,t=layui.lay,o=(layui.hint(),layui.device(),{config:{},set:function(e){var i=this;return i.config=a.extend({},i.config,e),i},on:function(e,i){return layui.onevent.call(this,r,e,i)}}),r="carousel",d="layui-this",s="layui-carousel-left",u="layui-carousel-right",c="layui-carousel-prev",m="layui-carousel-next",l="layui-carousel-arrow",f="layui-carousel-ind",i=function(e){var i=this;i.config=a.extend({},i.config,o.config,e),i.render()};i.prototype.config={width:"600px",height:"280px",full:!1,arrow:"hover",indicator:"inside",autoplay:!0,interval:3e3,anim:"",trigger:"click",index:0},i.prototype.render=function(){var e=this,i=e.config,n=a(i.elem);if(1*[carousel-item]>*"),i.index<0&&(i.index=0),i.index>=e.elemItem.length&&(i.index=e.elemItem.length-1),i.interval<800&&(i.interval=800),i.full?i.elem.css({position:"fixed",width:"100%",height:"100%",zIndex:9999}):i.elem.css({width:i.width,height:i.height}),i.elem.attr("lay-anim",i.anim),e.elemItem.eq(i.index).addClass(d),e.elemItem.length<=1||(e.indicator(),e.arrow(),e.autoplay(),e.events()))},i.prototype.reload=function(e){var i=this;clearInterval(i.timer),i.config=a.extend({},i.config,e),i.render()},i.prototype.prevIndex=function(){var e=this.config.index-1;return e=e<0?this.elemItem.length-1:e},i.prototype.nextIndex=function(){var e=this.config.index+1;return e=e>=this.elemItem.length?0:e},i.prototype.addIndex=function(e){var i=this.config;i.index=i.index+(e=e||1),i.index>=this.elemItem.length&&(i.index=0)},i.prototype.subIndex=function(e){var i=this.config;i.index=i.index-(e=e||1),i.index<0&&(i.index=this.elemItem.length-1)},i.prototype.autoplay=function(){var e=this,i=e.config;i.autoplay&&(clearInterval(e.timer),e.timer=setInterval(function(){e.slide()},i.interval))},i.prototype.arrow=function(){var i=this,e=i.config,n=a(['",'"].join(""));e.elem.attr("lay-arrow",e.arrow),e.elem.find("."+l)[0]&&e.elem.find("."+l).remove(),e.elem.append(n),n.on("click",function(){var e=a(this).attr("lay-type");i.slide(e)})},i.prototype["goto"]=function(e){var i=this,n=i.config;e>n.index?i.slide("add",e-n.index):e
                ',(i=[],layui.each(e.elemItem,function(e){i.push("")}),i.join("")),"
              "].join(""));n.elem.attr("lay-indicator",n.indicator),n.elem.find("."+f)[0]&&n.elem.find("."+f).remove(),n.elem.append(t),"updown"===n.anim&&t.css("margin-top",-t.height()/2),t.find("li").on("hover"===n.trigger?"mouseover":n.trigger,function(){e["goto"](a(this).index())})},i.prototype.slide=function(e,i){var n=this,t=n.elemItem,a=n.config,o=a.index,l=a.elem.attr("lay-filter");n.haveSlide||("sub"===e?(n.subIndex(i),t.eq(a.index).addClass(c),setTimeout(function(){t.eq(o).addClass(u),t.eq(a.index).addClass(u)},50)):(n.addIndex(i),t.eq(a.index).addClass(m),setTimeout(function(){t.eq(o).addClass(s),t.eq(a.index).addClass(s)},50)),setTimeout(function(){t.removeClass(d+" "+c+" "+m+" "+s+" "+u),t.eq(a.index).addClass(d),n.haveSlide=!1},300),n.elemInd.find("li").eq(a.index).addClass(d).siblings().removeClass(d),n.haveSlide=!0,e={index:a.index,prevIndex:o,item:t.eq(a.index)},"function"==typeof a.change&&a.change(e),layui.event.call(this,r,"change("+l+")",e))},i.prototype.events=function(){var e=this,i=e.config;i.elem.data("haveEvents")||(i.elem.on("mouseenter",function(){"always"!==e.config.autoplay&&clearInterval(e.timer)}).on("mouseleave",function(){"always"!==e.config.autoplay&&e.autoplay()}),i.elem.data("haveEvents",!0))},o.render=function(e){return new i(e)},e(r,o)});layui.define(["jquery","lay"],function(e){"use strict";var s=layui.jquery,r=layui.lay,c={config:{},index:layui.rate?layui.rate.index+1e4:0,set:function(e){var a=this;return a.config=s.extend({},a.config,e),a},on:function(e,a){return layui.onevent.call(this,l,e,a)}},l="rate",f="layui-icon-rate",h="layui-icon-rate-solid",o="layui-icon-rate-half",u="layui-icon-rate-solid layui-icon-rate-half",v="layui-icon-rate layui-icon-rate-half",a=function(e){var a=this;a.index=++c.index,a.config=s.extend({},a.config,c.config,e),a.render()};a.prototype.config={length:5,text:!1,readonly:!1,half:!1,value:0,theme:""},a.prototype.render=function(){var e=this,a=e.config,l=s(a.elem);if(1a.length&&(a.value=a.length),parseInt(a.value)===a.value||a.half||(a.value=Math.ceil(a.value)-a.value<.5?Math.ceil(a.value):Math.floor(a.value)),'
                "),t=1;t<=a.length;t++){var o='
              • ";a.half&&parseInt(a.value)!==a.value&&t==Math.ceil(a.value)?n=n+'
              • ":n+=o}n+="
              "+(a.text?''+a.value+"\u661f":"")+"";var l=a.elem,u=l.next(".layui-rate");u[0]&&u.remove(),e.elemTemp=s(n),a.span=e.elemTemp.next("span"),a.setText&&a.setText(a.value),l.html(e.elemTemp),l.addClass("layui-inline"),a.readonly||e.action()},a.prototype.setvalue=function(e){this.config.value=e,this.render()},a.prototype.action=function(){var i=this.config,n=this.elemTemp,t=n.find("i").width();n.children("li").each(function(e){var a=e+1,l=s(this);l.on("click",function(e){i.value=a,i.half&&e.pageX-s(this).offset().left<=t/2&&(i.value=i.value-.5),i.text&&n.next("span").text(i.value+"\u661f"),i.choose&&i.choose(i.value),i.setText&&i.setText(i.value)}),l.on("mousemove",function(e){n.find("i").each(function(){s(this).addClass(f).removeClass(u)}),n.find("i:lt("+a+")").each(function(){s(this).addClass(h).removeClass(v)}),i.half&&e.pageX-s(this).offset().left<=t/2&&l.children("i").addClass(o).removeClass(h)}),l.on("mouseleave",function(){n.find("i").each(function(){s(this).addClass(f).removeClass(u)}),n.find("i:lt("+Math.floor(i.value)+")").each(function(){s(this).addClass(h).removeClass(v)}),i.half&&parseInt(i.value)!==i.value&&n.children("li:eq("+Math.floor(i.value)+")").children("i").addClass(o).removeClass("layui-icon-rate-solid layui-icon-rate")})})},a.prototype.events=function(){this.config},c.render=function(e){e=new a(e);return function(){var a=this;return{setvalue:function(e){a.setvalue.call(a,e)},config:a.config}}.call(e)},e(l,c)});layui.define("jquery",function(l){"use strict";var g=layui.$,e=function(l){};e.prototype.load=function(l){var t,i,n,e,r,o,a,c,m,s,u,f,y,d=this,p=0,h=g((l=l||{}).elem);if(h[0])return e=g(l.scrollElem||document),r=l.mb||50,o=!("isAuto"in l)||l.isAuto,a=l.end||"\u6ca1\u6709\u66f4\u591a\u4e86",c=l.scrollElem&&l.scrollElem!==document,m="\u52a0\u8f7d\u66f4\u591a",s=g('"),h.find(".layui-flow-more")[0]||h.append(s),u=function(l,e){l=g(l),s.before(l),(e=0==e||null)?s.html(a):s.find("a").html(m),i=e,t=null,y&&y()},f=function(){t=!0,s.find("a").html(''),"function"==typeof l.done&&l.done(++p,u)},f(),s.find("a").on("click",function(){g(this);i||t||f()}),l.isLazyimg&&(y=d.lazyimg({elem:l.elem+" img",scrollElem:l.scrollElem})),o&&e.on("scroll",function(){var e=g(this),o=e.scrollTop();n&&clearTimeout(n),!i&&h.width()&&(n=setTimeout(function(){var l=(c?e:g(window)).height();(c?e.prop("scrollHeight"):document.documentElement.scrollHeight)-o-l<=r&&(t||f())},100))}),d},e.prototype.lazyimg=function(l){var e,c=this,m=0,s=g((l=l||{}).scrollElem||document),u=l.elem||"img",f=l.scrollElem&&l.scrollElem!==document,y=function(e,l){var o,t=s.scrollTop(),l=t+l,i=f?e.offset().top-s.offset().top+t:e.offset().top;t<=i&&i<=l&&e.attr("lay-src")&&(o=e.attr("lay-src"),layui.img(o,function(){var l=c.lazyimg.elem.eq(m);e.attr("src",o).removeAttr("lay-src"),l[0]&&n(l),m++},function(){c.lazyimg.elem.eq(m);e.removeAttr("lay-src")}))},n=function(l,e){var o=(f?e||s:g(window)).height(),t=s.scrollTop(),i=t+o;if(c.lazyimg.elem=g(u),l)y(l,o);else for(var n=0;n"),preview:"Preview"}},I=function(e){return _.trim(e).replace(/^\n|\n$/,"")};e("code",function(e){var M=e=_.extend(!0,{},a,e);e.elem=_(e.elem),e.elem[0]&&layui.each(e.elem.get().reverse(),function(e,a){var t,l,i,o,n,s,c,d,r,u,y=_(a),E=_.extend(!0,{},M,lay.options(a),(t={},layui.each(["title","height","encode","skin","about"],function(e,a){var i=y.attr("lay-"+a);"string"==typeof i&&(t[a]=i)}),t)),p=y.data("code")||(i=[],y.children("textarea").each(function(){i.push(I(this.value))}),0===i.length&&i.push(I(y.html())),i),f=(y.data("code",p),{copy:{className:"file-b",title:["\u590d\u5236\u4ee3\u7801"],event:function(e,a){if("function"==typeof E.onCopy)E.onCopy(l);else try{navigator.clipboard.writeText(C.unescape(l)).then(function(){g.msg("\u5df2\u590d\u5236",{icon:1})})}catch(i){g.msg("\u590d\u5236\u5931\u8d25",{icon:2})}}}}),v=(E.preview&&(a="LAY-CODE-DF-"+e,r=E.layout||["code","preview"],o="iframe"===E.preview,L=_('
              '),d=_('
              '),n=_('
              '),u=_('
              '),s=_('
              '),m=y.parent("."+T.ELEM_PREVIEW),v=y.prev("."+T.ELEM_TAB),h=y.next("."+T.ELEM_ITEM+"-preview"),E.id&&L.attr("id",E.id),L.addClass(E.className),d.attr("lay-filter",a),E.encode=!0,layui.each(r,function(e,a){var i=_('
            • ');0===e&&i.addClass("layui-this"),i.html(E.text[a]),n.append(i)}),_.extend(f,{full:{className:"screen-full",title:["\u6700\u5927\u5316\u663e\u793a","\u8fd8\u539f\u663e\u793a"],event:function(e,a){var i=e.closest("."+T.ELEM_PREVIEW),t="layui-icon-"+this.className,l="layui-icon-screen-restore",o=this.title,n=_("html,body"),s="layui-scollbar-hide";e.hasClass(t)?(i.addClass(T.ELEM_FULL),e.removeClass(t).addClass(l),e.attr("title",o[1]),n.addClass(s)):(i.removeClass(T.ELEM_FULL),e.removeClass(l).addClass(t),e.attr("title",o[0]),n.removeClass(s))}},window:{className:"release",title:["\u5728\u65b0\u7a97\u53e3\u9884\u89c8"],event:function(e,a){C.openWin({content:l})}}}),E.copy&&"array"===layui.type(E.tools)&&E.tools.unshift("copy"),s.on("click",">i",function(){var e=_(this),a=e.data("type");"function"==typeof f[a].event&&f[a].event(e,a),"function"==typeof E.toolsEvent&&E.toolsEvent(e,a)}),layui.each(E.tools,function(e,a){var i=f[a]&&f[a].className||a,t=f[a].title||[""];s.append('')}),v[0]&&v.remove(),h[0]&&h.remove(),m[0]&&y.unwrap(),d.append(n),E.tools&&d.append(s),y.wrap(L).addClass(T.ELEM_ITEM).before(d),o&&u.html(""),c=function(e){var a=e.children("iframe")[0],i=(o&&a?a.srcdoc=p.join(""):e.html(p.join("")),{container:e,render:function(){b.render(e.find(".layui-form")),w.render()}});setTimeout(function(){"function"==typeof E.done&&E.done(i)},3)},"preview"===r[0]?(u.addClass(T.ELEM_SHOW),y.before(u),c(u)):y.addClass(T.ELEM_SHOW).after(u),E.codeStyle=[E.style,E.codeStyle].join(""),E.previewStyle=[E.style,E.previewStyle].join(""),u.attr("style",E.previewStyle),w.on("tab("+a+")",function(e){var a=_(this),i=_(e.elem).closest("."+T.ELEM_PREVIEW).find("."+T.ELEM_ITEM),e=i.eq(e.index);i.removeClass(T.ELEM_SHOW),e.addClass(T.ELEM_SHOW),"preview"===a.attr("lay-id")&&c(e)})),E.ln?"ol":"ul"),h=_("<"+v+' class="layui-code-'+v+'">'),m=_('
              '),L=(y.addClass("layui-code-view layui-box"),E.skin&&("notepad"===E.skin&&(E.skin="dark"),y.removeClass("layui-code-dark layui-code-light"),y.addClass("layui-code-"+E.skin)),l=p.join(""));"function"==typeof E.codeParse&&(L=l=E.codeParse(L)),L=(L=E.encode?C.escape(L):L).replace(/[\r\t\n]+/g,"
            • "),y.html(h.html("
            • "+L+"
            • ")),E.header&&!y.children("."+T.ELEM_TITLE)[0]&&(m.html((E.title||E.text.code)+(E.about?'
              '+E.about+"
              ":"")),y.prepend(m)),E.elem.length===e+1&&"function"==typeof E.allDone&&E.allDone(),0<(d=Math.floor(h.find("li").length/100))&&h.css("margin-left",d+"px"),E.height&&h.css("max-height",E.height),h.attr("style",E.codeStyle),E.copy&&!E.preview&&(r=_(['','',""].join("")),u=y.children("."+T.ELEM_COPY),(h[0].style.height||h[0].style.maxHeight)&&r.addClass(T.ELEM_COPY+"-offset"),u[0]&&u.remove(),y.append(r),r.on("click",function(){f.copy.event()}))})})}),layui["layui.all"]||layui.addcss("modules/code.css?v=3","skincodecss"); \ No newline at end of file diff --git a/system/ATool.php b/system/ATool.php index a1ba369..b64e41a 100644 --- a/system/ATool.php +++ b/system/ATool.php @@ -218,7 +218,7 @@ function echo_Atool(){ ATool 工具箱 - +