Commit 3e1c91f3 by 黄麒宇

commit

parents
MIT License
Copyright (c) 2016 layui
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
\ No newline at end of file
# 重点中的重点
```
近日很多朋友反馈说页面中的一些内容无法显示,并且加载速度过慢,这是由于框架中存在json文件,直接打开造成的,请在服务器环境下打开
```
# 欢迎点赞支持
http://fly.layui.com/case/u/3198216
```
注:不是上面的star哦。点击此处的网址,然后用qq或者微博登录点赞就行了,谢谢大家,您的支持是我更新的动力
```
# 模版首页
![模版首页](https://git.oschina.net/uploads/images/2017/0719/161612_e86af39e_1404064.jpeg "模版首页")
# 项目简介:
这是一套是完全基于layui框架所做的纯前端后台管理模版,未引入任何第三方插件(如果天气插件不算的话),除打开的窗口和部分小改动外所有操作刷新后无效,关闭窗口或清除缓存后,所有操作无效
# 更新日志:
v1.0.1(优化) - 2017-06-25
* 修改刚进入页面无任何操作时按回车键提示“请输入解锁密码!”
* 优化关闭弹窗按钮的提示信息位置问题【可能是因为加载速度的原因,造成这个问题,所以将提示信息做了一个延时】
* “个人资料”提供修改功能
* 顶部天气信息自动判断位置【忘记之前是怎么想的做成北京的了,可能是我在大首都吧,哈哈。。。】
* 优化“用户列表”无法查询到新添加的用户【竟然是因为我把key值写错了,该死。。。】
* 将左侧菜单做成json方式调用,而不是js调用,方便开发使用。同时添加了参数配置和非窗口模式打开的判断,【如登录页面】
* 优化部分页面样式问题
* 优化添加窗时如果导航不存在图标无法添加成功
v1.0.1(新增) - 2017-07-05
* 增加“用户列表”批量删除功能【可能当时忘记添加了吧。。。】
* 顶部窗口导航添加“关闭其他”、“关闭全部”功能,同时修改菜单窗口过多的展示效果【在此感谢larryCMS给予的启发】
* 添加可隐藏左侧菜单功能【之前考虑没必要添加,但是很多朋友要求加上,那就加上吧,嘿嘿。。。】
* 增加换肤功能【之前就想添加的,但是一直没有找到好的方式(好吧,其实是我忘记了),此方法相对简单,不是普遍适用,只简单的做个功能,如果实际用到建议单独写一套样式,将边框颜色、按钮颜色等统一调整,此处为保证代码的简洁性,只做简单的功能,不做赘述,另外“自定义”颜色中未做校验,所以要写入正确的色值。如“#f00”】
* 增加登录页面【背景视频仅作样式参考,实际使用中请自行更换为其他视频或图片,否则造成的任何问题使用者本人承担。】
* 新增打开窗口的动画效果
# 开源协议
MIT License
# 在线预览
http://www.layuicms.com/v1/
.layui-flow-more{ clear: both; margin-top: 20px; }
#Images li{ width:19%; margin:0.5% 0.5%; float: left; overflow:hidden;}
#Images li img{ width:100%; }
#Images li .operate{ display: block; height: 40px; width:100%; background:#f4f5f9; }
#Images li .operate .check{ float:left; margin-left:11px; height:18px; padding:11px 0; }
#Images li .operate .img_del{ float:right; margin:7px 11px 0 0; font-size: 22px; cursor:pointer; }
#Images li .operate .img_del:hover{ color:#f00; }
/*适配*/
@media screen and (max-width:1050px){
/*用户信息*/
#Images li{ width:24%;}
}
@media screen and (max-width: 750px){
/*用户信息*/
#Images li{ width:49%;}
}
@media screen and (max-width:432px){
/*用户信息*/
#Images li{ width:99%;}
}
\ No newline at end of file
body{overflow:hidden;}
.video-player{background-color: transparent;display: block;position: absolute;z-index: 1;top:0;}
.video_mask{ width:100%; height:100%; position:absolute; left:0; top:0; z-index:90; background-color:rgba(0,0,0,0.5); }
.login{ height:260px;width:260px;padding: 20px;background-color:rgba(0,0,0,0.5);border-radius: 4px;position:absolute;left: 50%;top: 50%; margin:-150px 0 0 -150px;z-index:99;}
.login h1{ text-align:center; color:#fff; font-size:24px; margin-bottom:20px; }
.form_code{ position:relative; }
.form_code .code{ position:absolute; right:0; top:1px; cursor:pointer; }
.login_btn{ width:100%; }
\ No newline at end of file
.selectMsg{ width:110px; margin-right: 15px; }
.msg_info,.msg_time,.msg_reply,.msg_opr{min-height:50px; text-align:center;}
.msg_info{text-align:left; position: relative; }
.msg_info>img{ position: absolute; left:10px; top:10px; cursor:pointer; }
.msg_info .user_info{ padding-left:55px; line-height:25px; }
.msg_info .user_info h2{ color:#222; cursor:pointer; }
.msg_info .user_info h2:hover{ color:#1AA094;}
.msg_info .user_info p{ color:#8d8d8d; }
.msg_reply{ color:#e15f63; }
/*回复*/
.replay_edit{ overflow: hidden; margin-bottom:20px; }
.replay_edit a{margin-top: 10px; width:100px; float:right;}
\ No newline at end of file
.news_search{ padding:10px 10px; }
.layui-table,.layui-table th{ text-align:center; }
.news_list .layui-form-switch{ margin-top:0; }
/*分页*/
#page{ text-align:right; }
\ No newline at end of file
form input.layui-input[disabled]{ background:#f2f2f2; color:#595963!important; }
.user_left{ width:45%; float: left; margin:20px 0 0 5%; }
.user_right{ width:25%; float: left; margin:20px 0 0 5%; text-align: center; }
.user_right p{ margin:10px 0 25px; font-size: 12px; text-align: center; color: #FF5722;}
.user_right img#userFace{ width:200px; height:200px; }
.layui-table,.layui-table th{ text-align:center; }
.userAddress.layui-form-item .layui-input-inline{ width:23%; }
.userAddress.layui-form-item .layui-input-inline:last-child{ margin-right:0; }
/*用户列表*/
#page{ text-align:right; }
/*修改密码*/
.changePwd{ width:30%; margin:3% 0 0 5%; }
/*适配*/
@media screen and (max-width:1050px){
/*用户信息*/
.user_left,.user_right,.changePwd{ width:100%; float:none; margin-left: 0; }
.user_right{ margin-bottom: 20px; }
}
@media screen and (max-width:450px){
.userAddress.layui-form-item .layui-input-inline{ width:auto; }
}
\ No newline at end of file
File added
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>layui后台管理模板</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta http-equiv="Access-Control-Allow-Origin" content="*">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">
<link rel="icon" href="favicon.ico">
<link rel="stylesheet" href="layui/css/layui.css" media="all" />
<link rel="stylesheet" href="//at.alicdn.com/t/font_tnyc012u2rlwstt9.css" media="all" />
<link rel="stylesheet" href="css/main.css" media="all" />
</head>
<body class="main_body">
<div class="layui-layout layui-layout-admin">
<!-- 顶部 -->
<div class="layui-header header">
<div class="layui-main">
<a href="#" class="logo">layui后台管理</a>
<!-- 显示/隐藏菜单 -->
<a href="javascript:;" class="iconfont hideMenu icon-menu1"></a>
<!-- 搜索 -->
<div class="layui-form component">
<select name="modules" lay-verify="required" lay-search="">
<option value="">直接选择或搜索选择</option>
<option value="1">layer</option>
<option value="2">form</option>
<option value="3">layim</option>
<option value="4">element</option>
<option value="5">laytpl</option>
<option value="6">upload</option>
<option value="7">laydate</option>
<option value="8">laypage</option>
<option value="9">flow</option>
<option value="10">util</option>
<option value="11">code</option>
<option value="12">tree</option>
<option value="13">layedit</option>
<option value="14">nav</option>
<option value="15">tab</option>
<option value="16">table</option>
<option value="17">select</option>
<option value="18">checkbox</option>
<option value="19">switch</option>
<option value="20">radio</option>
</select>
<i class="layui-icon">&#xe615;</i>
</div>
<!-- 天气信息 -->
<div class="weather" pc>
<div id="tp-weather-widget"></div>
<script>(function(T,h,i,n,k,P,a,g,e){g=function(){P=h.createElement(i);a=h.getElementsByTagName(i)[0];P.src=k;P.charset="utf-8";P.async=1;a.parentNode.insertBefore(P,a)};T["ThinkPageWeatherWidgetObject"]=n;T[n]||(T[n]=function(){(T[n].q=T[n].q||[]).push(arguments)});T[n].l=+new Date();if(T.attachEvent){T.attachEvent("onload",g)}else{T.addEventListener("load",g,false)}}(window,document,"script","tpwidget","//widget.seniverse.com/widget/chameleon.js"))</script>
<script>tpwidget("init", {
"flavor": "slim",
"location": "WX4FBXXFKE4F",
"geolocation": "enabled",
"language": "zh-chs",
"unit": "c",
"theme": "chameleon",
"container": "tp-weather-widget",
"bubble": "disabled",
"alarmType": "badge",
"color": "#FFFFFF",
"uid": "U9EC08A15F",
"hash": "039da28f5581f4bcb5c799fb4cdfb673"
});
tpwidget("show");</script>
</div>
<!-- 顶部右侧菜单 -->
<ul class="layui-nav top_menu">
<li class="layui-nav-item showNotice" id="showNotice" pc>
<a href="javascript:;"><i class="iconfont icon-gonggao"></i><cite>系统公告</cite></a>
</li>
<li class="layui-nav-item" mobile>
<a href="javascript:;" class="mobileAddTab" data-url="page/user/changePwd.html"><i class="iconfont icon-shezhi1" data-icon="icon-shezhi1"></i><cite>设置</cite></a>
</li>
<li class="layui-nav-item" mobile>
<a href="page/login/login.html" class="signOut"><i class="iconfont icon-loginout"></i> 退出</a>
</li>
<li class="layui-nav-item lockcms" pc>
<a href="javascript:;"><i class="iconfont icon-lock1"></i><cite>锁屏</cite></a>
</li>
<li class="layui-nav-item" pc>
<a href="javascript:;">
<img src="images/face.jpg" class="layui-circle" width="35" height="35">
<cite>请叫我马哥</cite>
</a>
<dl class="layui-nav-child">
<dd><a href="javascript:;" data-url="page/user/userInfo.html"><i class="iconfont icon-zhanghu" data-icon="icon-zhanghu"></i><cite>个人资料</cite></a></dd>
<dd><a href="javascript:;" data-url="page/user/changePwd.html"><i class="iconfont icon-shezhi1" data-icon="icon-shezhi1"></i><cite>修改密码</cite></a></dd>
<dd><a href="javascript:;" class="changeSkin"><i class="iconfont icon-huanfu"></i><cite>更换皮肤</cite></a></dd>
<dd><a href="page/login/login.html" class="signOut"><i class="iconfont icon-loginout"></i><cite>退出</cite></a></dd>
</dl>
</li>
</ul>
</div>
</div>
<!-- 左侧导航 -->
<div class="layui-side layui-bg-black">
<div class="user-photo">
<a class="img" title="我的头像" ><img src="images/face.jpg"></a>
<p>你好!<span class="userName">请叫我马哥</span>, 欢迎登录</p>
</div>
<div class="navBar layui-side-scroll"></div>
</div>
<!-- 右侧内容 -->
<div class="layui-body layui-form">
<div class="layui-tab marg0" lay-filter="bodyTab" id="top_tabs_box">
<ul class="layui-tab-title top_tab" id="top_tabs">
<li class="layui-this" lay-id=""><i class="iconfont icon-computer"></i> <cite>后台首页</cite></li>
</ul>
<ul class="layui-nav closeBox">
<li class="layui-nav-item">
<a href="javascript:;"><i class="iconfont icon-caozuo"></i> 页面操作</a>
<dl class="layui-nav-child">
<dd><a href="javascript:;" class="refresh refreshThis"><i class="layui-icon">&#x1002;</i> 刷新当前</a></dd>
<dd><a href="javascript:;" class="closePageOther"><i class="iconfont icon-prohibit"></i> 关闭其他</a></dd>
<dd><a href="javascript:;" class="closePageAll"><i class="iconfont icon-guanbi"></i> 关闭全部</a></dd>
</dl>
</li>
</ul>
<div class="layui-tab-content clildFrame">
<div class="layui-tab-item layui-show">
<iframe src="page/main.html"></iframe>
</div>
</div>
</div>
</div>
<!-- 底部 -->
<!-- <div class="layui-footer footer">
<p>copyright @2017 请叫我马哥  <a onclick="donation()" class="layui-btn layui-btn-danger layui-btn-small">捐赠作者</a></p>
</div> -->
</div>
<!-- 移动导航 -->
<div class="site-tree-mobile layui-hide"><i class="layui-icon">&#xe602;</i></div>
<div class="site-mobile-shade"></div>
<script type="text/javascript" src="layui/layui.js"></script>
<script type="text/javascript" src="js/leftNav.js"></script>
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
/*
@Author: 请叫我马哥
@Time: 2017-04
@Tittle: tab
@Description: 点击对应按钮添加新窗口
*/
var tabFilter,menu=[],liIndex,curNav,delMenu;
layui.define(["element","jquery"],function(exports){
var element = layui.element(),
$ = layui.jquery,
layId,
Tab = function(){
this.tabConfig = {
closed : true,
openTabNum : undefined, //最大可打开窗口数量
tabFilter : "bodyTab", //添加窗口的filter
url : undefined //获取菜单json地址
}
};
//获取二级菜单数据
Tab.prototype.render = function() {
var url = this.tabConfig.url;
$.get(url,function(data){
//显示左侧菜单
if($(".navBar").html() == ''){
var _this = this;
$(".navBar").html(navBar(data)).height($(window).height()-245);
element.init(); //初始化页面元素
$(window).resize(function(){
$(".navBar").height($(window).height()-245);
})
}
})
}
//参数设置
Tab.prototype.set = function(option) {
var _this = this;
$.extend(true, _this.tabConfig, option);
return _this;
};
//通过title获取lay-id
Tab.prototype.getLayId = function(title){
$(".layui-tab-title.top_tab li").each(function(){
if($(this).find("cite").text() == title){
layId = $(this).attr("lay-id");
}
})
return layId;
}
//通过title判断tab是否存在
Tab.prototype.hasTab = function(title){
var tabIndex = -1;
$(".layui-tab-title.top_tab li").each(function(){
if($(this).find("cite").text() == title){
tabIndex = 1;
}
})
return tabIndex;
}
//右侧内容tab操作
var tabIdIndex = 0;
Tab.prototype.tabAdd = function(_this){
if(window.sessionStorage.getItem("menu")){
menu = JSON.parse(window.sessionStorage.getItem("menu"));
}
var that = this;
var closed = that.tabConfig.closed,
openTabNum = that.tabConfig.openTabNum;
tabFilter = that.tabConfig.tabFilter;
if(_this.attr("target") == "_blank"){
window.location.href = _this.attr("data-url");
}else if(_this.attr("data-url") != undefined){
var title = '';
if(_this.find("i.iconfont,i.layui-icon").attr("data-icon") != undefined){
if(_this.find("i.iconfont").attr("data-icon") != undefined){
title += '<i class="iconfont '+_this.find("i.iconfont").attr("data-icon")+'"></i>';
}else{
title += '<i class="layui-icon">'+_this.find("i.layui-icon").attr("data-icon")+'</i>';
}
}
//已打开的窗口中不存在
if(that.hasTab(_this.find("cite").text()) == -1 && _this.siblings("dl.layui-nav-child").length == 0){
if($(".layui-tab-title.top_tab li").length == openTabNum){
layer.msg('只能同时打开'+openTabNum+'个选项卡哦。不然系统会卡的!');
return;
}
tabIdIndex++;
title += '<cite>'+_this.find("cite").text()+'</cite>';
title += '<i class="layui-icon layui-unselect layui-tab-close" data-id="'+tabIdIndex+'">&#x1006;</i>';
element.tabAdd(tabFilter, {
title : title,
content :"<iframe src='"+_this.attr("data-url")+"' data-id='"+tabIdIndex+"'></frame>",
id : new Date().getTime()
})
//当前窗口内容
var curmenu = {
"icon" : _this.find("i.iconfont").attr("data-icon")!=undefined ? _this.find("i.iconfont").attr("data-icon") : _this.find("i.layui-icon").attr("data-icon"),
"title" : _this.find("cite").text(),
"href" : _this.attr("data-url"),
"layId" : new Date().getTime()
}
menu.push(curmenu);
window.sessionStorage.setItem("menu",JSON.stringify(menu)); //打开的窗口
window.sessionStorage.setItem("curmenu",JSON.stringify(curmenu)); //当前的窗口
element.tabChange(tabFilter, that.getLayId(_this.find("cite").text()));
that.tabMove(); //顶部窗口是否可滚动
}else{
//当前窗口内容
var curmenu = {
"icon" : _this.find("i.iconfont").attr("data-icon")!=undefined ? _this.find("i.iconfont").attr("data-icon") : _this.find("i.layui-icon").attr("data-icon"),
"title" : _this.find("cite").text(),
"href" : _this.attr("data-url")
}
window.sessionStorage.setItem("curmenu",JSON.stringify(curmenu)); //当前的窗口
element.tabChange(tabFilter, that.getLayId(_this.find("cite").text()));
that.tabMove(); //顶部窗口是否可滚动
}
}
}
//顶部窗口移动
Tab.prototype.tabMove = function(){
$(window).on("resize",function(){
var topTabsBox = $("#top_tabs_box"),
topTabsBoxWidth = $("#top_tabs_box").width(),
topTabs = $("#top_tabs"),
topTabsWidth = $("#top_tabs").width(),
tabLi = topTabs.find("li.layui-this"),
top_tabs = document.getElementById("top_tabs");;
if(topTabsWidth > topTabsBoxWidth){
if(tabLi.position().left > topTabsBoxWidth || tabLi.position().left+topTabsBoxWidth > topTabsWidth){
topTabs.css("left",topTabsBoxWidth-topTabsWidth);
}else{
topTabs.css("left",-tabLi.position().left);
}
//拖动效果
var flag = false;
var cur = {
x:0,
y:0
}
var nx,dx,x ;
function down(){
flag = true;
var touch ;
if(event.touches){
touch = event.touches[0];
}else {
touch = event;
}
cur.x = touch.clientX;
dx = top_tabs.offsetLeft;
}
function move(){
var self=this;
window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
if(flag){
var touch ;
if(event.touches){
touch = event.touches[0];
}else {
touch = event;
}
nx = touch.clientX - cur.x;
x = dx+nx;
if(x > 0){
x = 0;
}else{
if(x < topTabsBoxWidth-topTabsWidth){
x = topTabsBoxWidth-topTabsWidth;
}else{
x = dx+nx;
}
}
top_tabs.style.left = x +"px";
//阻止页面的滑动默认事件
document.addEventListener("touchmove",function(){
event.preventDefault();
},false);
}
}
//鼠标释放时候的函数
function end(){
flag = false;
}
//pc端拖动效果
topTabs.on("mousedown",down);
topTabs.on("mousemove",move);
$(document).on("mouseup",end);
//移动端拖动效果
topTabs.on("touchstart",down);
topTabs.on("touchmove",move);
topTabs.on("touchend",end);
}else{
//移除pc端拖动效果
topTabs.off("mousedown",down);
topTabs.off("mousemove",move);
topTabs.off("mouseup",end);
//移除移动端拖动效果
topTabs.off("touchstart",down);
topTabs.off("touchmove",move);
topTabs.off("touchend",end);
topTabs.removeAttr("style");
return false;
}
}).resize();
}
$("body").on("click",".top_tab li",function(){
//切换后获取当前窗口的内容
var curmenu = '';
var menu = JSON.parse(window.sessionStorage.getItem("menu"));
curmenu = menu[$(this).index()-1];
if($(this).index() == 0){
window.sessionStorage.setItem("curmenu",'');
}else{
window.sessionStorage.setItem("curmenu",JSON.stringify(curmenu));
if(window.sessionStorage.getItem("curmenu") == "undefined"){
//如果删除的不是当前选中的tab,则将curmenu设置成当前选中的tab
if(curNav != JSON.stringify(delMenu)){
window.sessionStorage.setItem("curmenu",curNav);
}else{
window.sessionStorage.setItem("curmenu",JSON.stringify(menu[liIndex-1]));
}
}
}
element.tabChange(tabFilter,$(this).attr("lay-id")).init();
// new Tab().tabMove();
})
//删除tab
$("body").on("click",".top_tab li i.layui-tab-close",function(){
//删除tab后重置session中的menu和curmenu
liIndex = $(this).parent("li").index();
var menu = JSON.parse(window.sessionStorage.getItem("menu"));
//获取被删除元素
delMenu = menu[liIndex-1];
var curmenu = window.sessionStorage.getItem("curmenu")=="undefined" ? undefined : window.sessionStorage.getItem("curmenu")=="" ? '' : JSON.parse(window.sessionStorage.getItem("curmenu"));
if(JSON.stringify(curmenu) != JSON.stringify(menu[liIndex-1])){ //如果删除的不是当前选中的tab
// window.sessionStorage.setItem("curmenu",JSON.stringify(curmenu));
curNav = JSON.stringify(curmenu);
}else{
if($(this).parent("li").length > liIndex){
window.sessionStorage.setItem("curmenu",curmenu);
curNav = curmenu;
}else{
window.sessionStorage.setItem("curmenu",JSON.stringify(menu[liIndex-1]));
curNav = JSON.stringify(menu[liIndex-1]);
}
}
menu.splice((liIndex-1), 1);
window.sessionStorage.setItem("menu",JSON.stringify(menu));
element.tabDelete("bodyTab",$(this).parent("li").attr("lay-id")).init();
new Tab().tabMove();
})
var bodyTab = new Tab();
exports("bodyTab",function(option){
return bodyTab.set(option);
});
})
差异被折叠。 点击展开。
function navBar(strData){
var data;
if(typeof(strData) == "string"){
var data = JSON.parse(strData); //部分用户解析出来的是字符串,转换一下
}else{
data = strData;
}
var ulHtml = '<ul class="layui-nav layui-nav-tree">';
for(var i=0;i<data.length;i++){
if(data[i].spread){
ulHtml += '<li class="layui-nav-item layui-nav-itemed">';
}else{
ulHtml += '<li class="layui-nav-item">';
}
if(data[i].children != undefined && data[i].children.length > 0){
ulHtml += '<a href="javascript:;">';
if(data[i].icon != undefined && data[i].icon != ''){
if(data[i].icon.indexOf("icon-") != -1){
ulHtml += '<i class="iconfont '+data[i].icon+'" data-icon="'+data[i].icon+'"></i>';
}else{
ulHtml += '<i class="layui-icon" data-icon="'+data[i].icon+'">'+data[i].icon+'</i>';
}
}
ulHtml += '<cite>'+data[i].title+'</cite>';
ulHtml += '<span class="layui-nav-more"></span>';
ulHtml += '</a>';
ulHtml += '<dl class="layui-nav-child">';
for(var j=0;j<data[i].children.length;j++){
if(data[i].children[j].target == "_blank"){
ulHtml += '<dd><a href="javascript:;" data-url="'+data[i].children[j].href+'" target="'+data[i].children[j].target+'">';
}else{
ulHtml += '<dd><a href="javascript:;" data-url="'+data[i].children[j].href+'">';
}
if(data[i].children[j].icon != undefined && data[i].children[j].icon != ''){
if(data[i].children[j].icon.indexOf("icon-") != -1){
ulHtml += '<i class="iconfont '+data[i].children[j].icon+'" data-icon="'+data[i].children[j].icon+'"></i>';
}else{
ulHtml += '<i class="layui-icon" data-icon="'+data[i].children[j].icon+'">'+data[i].children[j].icon+'</i>';
}
}
ulHtml += '<cite>'+data[i].children[j].title+'</cite></a></dd>';
}
ulHtml += "</dl>";
}else{
if(data[i].target == "_blank"){
ulHtml += '<a href="javascript:;" data-url="'+data[i].href+'" target="'+data[i].target+'">';
}else{
ulHtml += '<a href="javascript:;" data-url="'+data[i].href+'">';
}
if(data[i].icon != undefined && data[i].icon != ''){
if(data[i].icon.indexOf("icon-") != -1){
ulHtml += '<i class="iconfont '+data[i].icon+'" data-icon="'+data[i].icon+'"></i>';
}else{
ulHtml += '<i class="layui-icon" data-icon="'+data[i].icon+'">'+data[i].icon+'</i>';
}
}
ulHtml += '<cite>'+data[i].title+'</cite></a>';
}
ulHtml += '</li>';
}
ulHtml += '</ul>';
return ulHtml;
}
layui.config({
base : "js/"
}).use(['form','element','layer','jquery'],function(){
var form = layui.form(),
layer = parent.layer === undefined ? layui.layer : parent.layer,
element = layui.element(),
$ = layui.jquery;
$(".panel a").on("click",function(){
window.parent.addTab($(this));
})
//动态获取文章总数和待审核文章数量,最新文章
$.get("../json/newsList.json",
function(data){
var waitNews = [];
$(".allNews span").text(data.length); //文章总数
for(var i=0;i<data.length;i++){
var newsStr = data[i];
if(newsStr["newsStatus"] == "待审核"){
waitNews.push(newsStr);
}
}
$(".waitNews span").text(waitNews.length); //待审核文章
//加载最新文章
var hotNewsHtml = '';
for(var i=0;i<5;i++){
hotNewsHtml += '<tr>'
+'<td align="left">'+data[i].newsName+'</td>'
+'<td>'+data[i].newsTime+'</td>'
+'</tr>';
}
$(".hot_news").html(hotNewsHtml);
}
)
//图片总数
$.get("../json/images.json",
function(data){
$(".imgAll span").text(data.length);
}
)
//用户数
$.get("../json/usersList.json",
function(data){
$(".userAll span").text(data.length);
}
)
//新消息
$.get("../json/message.json",
function(data){
$(".newMessage span").text(data.length);
}
)
//数字格式化
$(".panel span").each(function(){
$(this).html($(this).text()>9999 ? ($(this).text()/10000).toFixed(2) + "<em>万</em>" : $(this).text());
})
//系统基本参数
if(window.sessionStorage.getItem("systemParameter")){
var systemParameter = JSON.parse(window.sessionStorage.getItem("systemParameter"));
fillParameter(systemParameter);
}else{
$.ajax({
url : "../json/systemParameter.json",
type : "get",
dataType : "json",
success : function(data){
fillParameter(data);
}
})
}
//填充数据方法
function fillParameter(data){
//判断字段数据是否存在
function nullData(data){
if(data == '' || data == "undefined"){
return "未定义";
}else{
return data;
}
}
$(".version").text(nullData(data.version)); //当前版本
$(".author").text(nullData(data.author)); //开发作者
$(".homePage").text(nullData(data.homePage)); //网站首页
$(".server").text(nullData(data.server)); //服务器环境
$(".dataBase").text(nullData(data.dataBase)); //数据库版本
$(".maxUpload").text(nullData(data.maxUpload)); //最大上传限制
$(".userRights").text(nullData(data.userRights));//当前用户权限
}
})
[{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照1"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照2"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照3"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照4"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照5"
},{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照6"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照7"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照8"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照9"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照10"
},{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照11"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照12"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照13"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照14"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照15"
},{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照16"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照17"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照18"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照19"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照20"
},{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照21"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照22"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照23"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照24"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照25"
},{
"imgSrc" : "../../images/userface1.jpg",
"imgTitle" : "美女生活照26"
},{
"imgSrc" : "../../images/userface2.jpg",
"imgTitle" : "美女生活照27"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照28"
},{
"imgSrc" : "../../images/userface4.jpg",
"imgTitle" : "美女生活照29"
},{
"imgSrc" : "../../images/userface5.jpg",
"imgTitle" : "美女生活照30"
},{
"imgSrc" : "../../images/userface3.jpg",
"imgTitle" : "美女生活照31"
}]
\ No newline at end of file
[{
"linksId" : "1",
"linksName" : "layui - 经典模块化前端框架",
"linksUrl" : "http://www.layui.com",
"masterEmail" : "xianxin@layui.com",
"linksTime" : "2017-05-14",
"showAddress" : "首页"
},{
"linksId" : "2",
"linksName" : "layer官方演示与讲解",
"linksUrl" : "http://layer.layui.com",
"masterEmail" : "xianxin@layer.com",
"linksTime" : "2017-05-15",
"showAddress" : "子页"
},{
"linksId" : "3",
"linksName" : "layui - 前端框架官方社区",
"linksUrl" : "http://fly.layui.com",
"masterEmail" : "xianxin@fly.com",
"linksTime" : "2017-05-12",
"showAddress" : "子页"
}]
\ No newline at end of file
[{
"msgId" : "1111",
"userface" : "../../images/userface1.jpg",
"userName" : "小王",
"userAsk" : "马哥你好,请问你这个模版用的是什么框架啊?",
"askTime" : "2017-05-27 12:50",
"msgReply" : [{
"userface" : "../../images/face.jpg",
"userName" : "请叫我马哥",
"userAsk" : "用的layui,贤心大神开发的前端框架",
"askTime" : "2017-05-27 13:50"
}]
},{
"msgId" : "2222",
"userface" : "../../images/userface2.jpg",
"userName" : "小李",
"userAsk" : "马哥你好,请问你多大了?",
"askTime" : "2017-05-27 12:50",
"msgReply" : []
},{
"msgId" : "3333",
"userface" : "../../images/userface3.jpg",
"userName" : "小赵",
"userAsk" : "马哥你好,请问你家是哪的?",
"askTime" : "2017-05-27 12:50",
"msgReply" : []
},{
"msgId" : "4444",
"userface" : "../../images/userface4.jpg",
"userName" : "小高",
"userAsk" : "马哥你好,请问你有没有女朋友啊?",
"askTime" : "2017-05-27 12:50",
"msgReply" : [{
"userface" : "../../images/face.jpg",
"userName" : "请叫我马哥",
"userAsk" : "这个貌似和技术无关吧,难道你想给我当老婆,呵呵。。。",
"askTime" : "2017-05-27 13:50"
}]
},{
"msgId" : "5555",
"userface" : "../../images/userface5.jpg",
"userName" : "小楚",
"userAsk" : "马哥你好,请问你一个月工资多少啊?",
"askTime" : "2017-05-27 12:50",
"msgReply" : []
}]
\ No newline at end of file
[{
"title" : "工具台账",
"icon" : "icon-computer",
"href" : "page/main.html",
"spread" : false
},{
"title" : "工具借还",
"icon" : "icon-text",
"href" : "page/news/newsList.html",
"spread" : false
},{
"title" : "工具柜管理",
"icon" : "&#xe64c;",
"href" : "page/links/linksList.html",
"spread" : false
},{
"title" : "非标刀具台账",
"icon" : "&#xe631;",
"href" : "page/systemParameter/systemParameter.html",
"spread" : false
},{
"title" : "模具台账",
"icon" : "&#xe631;",
"href" : "page/systemParameter/systemParameter.html",
"spread" : false
},
{
"title" : "家具台账",
"icon" : "&#xe631;",
"href" : "page/systemParameter/systemParameter.html",
"spread" : false
},
{
"title" : "用户管理",
"icon" : "&#xe631;",
"href" : "page/systemParameter/systemParameter.html",
"spread" : false,
"children" : [
{
"title" : "用户信息",
"icon" : "&#xe61c;",
"href" : "page/user/allUsers.html",
"spread" : false
},
{
"title" : "用户角色",
"icon" : "&#xe61c;",
"href" : "page/404.html",
"spread" : false
},
{
"title" : "按钮管理",
"icon" : "&#xe61c;",
"href" : "page/404.html",
"spread" : false
},
{
"title" : "菜单管理",
"icon" : "&#xe609;",
"href" : "page/menu/allMenus.html",
"spread" : false
},
{
"title" : "部门管理",
"icon" : "&#xe609;",
"href" : "page/login/login.html",
"spread" : false,
"target" : "_blank"
}
]
},
{
"title" : "系统管理",
"icon" : "&#xe631;",
"href" : "page/systemParameter/systemParameter.html",
"spread" : false
}
]
[{
"newsId" : "1",
"newsName" : "css3用transition实现边框动画效果",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "",
"newsTime" : "2017-04-14"
},{
"newsId" : "2",
"newsName" : "自定义的模块名称可以包含/吗",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "3",
"newsName" : "layui.tree如何ajax加载二级菜单",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "4",
"newsName" : "layui.upload如何带参数?像jq的data:{}那样",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "5",
"newsName" : "表单元素长度应该怎么调整才美观",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "6",
"newsName" : "layui 利用ajax冲获取到json 数据后 怎样进行渲染",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "7",
"newsName" : "微信页面中富文本编辑器LayEdit无法使用",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "",
"newsTime" : "2017-04-14"
},{
"newsId" : "8",
"newsName" : "layui 什么时候发布新的版本呀",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "9",
"newsName" : "layui上传组件不支持上传前的图片预览嘛?",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "10",
"newsName" : "关于layer.confirm点击无法关闭的疑惑",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "11",
"newsName" : "layui form表单提交成功如何拿取返回值",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "12",
"newsName" : "layer mobileV2.0 yes回调函数无法用?",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "13",
"newsName" : "关于layer中自带的btn回调弹层页面的内容",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "",
"newsTime" : "2017-04-14"
},{
"newsId" : "14",
"newsName" : "被编辑器 layedit 图片上传搞崩溃了",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "15",
"newsName" : "element.tabChange()方法运行了,但是页面并没有产生效果",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "16",
"newsName" : "请教一下layer的滚动条时怎么搞的。真心喜欢啊",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "17",
"newsName" : "时间控件怎么取消默认的淡入淡出效果。。。",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "18",
"newsName" : "layer移动版,有一年没有更新了,不更新了吗?",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "19",
"newsName" : "layer弹出的动画可以自定义吗",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "",
"newsTime" : "2017-04-14"
},{
"newsId" : "20",
"newsName" : "点击layer弹窗里的按钮,不能再显示一个弹窗,为什么呢?",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "21",
"newsName" : "layer 为什么可以单引入css",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "22",
"newsName" : "进度条的lay-percent=''是通过ajax动态加载的 可是在页面上无效果",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "23",
"newsName" : "Layim适合做官网的在线客服交流功能吗?",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "24",
"newsName" : "模块化城市三级联动!模块化加载",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "25",
"newsName" : "fly社区个人中心导航菜单效果是纯CSS做的吗?",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "",
"newsTime" : "2017-04-14"
},{
"newsId" : "26",
"newsName" : "关于load 弹出显示文字的问题【严重】",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "27",
"newsName" : "layim for mobile,移动端关于群聊的插件",
"newsAuthor" : "admin",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "28",
"newsName" : "layui:表单radio和checkbox怎么做必须校验",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "29",
"newsName" : "关于layui官网页面代码里面的site样式表",
"newsAuthor" : "请叫我马哥",
"newsStatus" : "待审核",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
},{
"newsId" : "30",
"newsName" : "不触发表单的submit,如何进行layui的表单验证?",
"newsAuthor" : "admin",
"newsStatus" : "审核通过",
"newsLook" : "开放浏览",
"isShow" : "checked",
"newsTime" : "2017-04-14"
}]
\ No newline at end of file
{
"cmsName": "layui后台管理模版",
"version": "v1.0.1",
"author": "请叫我马哥",
"homePage": "page/index.html",
"server": "windows",
"dataBase": "8.00.2039",
"maxUpload": "2M",
"userRights": "总管理员",
"description": "这是马哥闲来无事做的一套基于layui的cms模版,纯静态页面,不包含数据库",
"powerby": "copyright @2017 请叫我马哥",
"record": "京ICP备14040xxx号-1",
"keywords": "layui,马哥,cms,模版"
}
\ No newline at end of file
{
"code": 0,
"msg": "",
"data": [
{
"src": "../../images/userface1.jpg"
},{
"src": "../../images/userface2.jpg"
},{
"src": "../../images/userface3.jpg"
},{
"src": "../../images/userface4.jpg"
},{
"src": "../../images/userface5.jpg"
}
]
}
\ No newline at end of file
[{
"usersId" : "1",
"userName" : "贤心",
"userEmail" : "xianxin@layui.com",
"userSex" : "男",
"userStatus" : "正常使用",
"userGrade" : "高级会员",
"userEndTime" : "2017-05-14 15:35"
},{
"usersId" : "2",
"userName" : "纸飞机",
"userEmail" : "fly@layui.com",
"userSex" : "男",
"userStatus" : "正常使用",
"userGrade" : "高级会员",
"userEndTime" : "2017-05-14 16:25"
},{
"usersId" : "3",
"userName" : "请叫我马哥",
"userEmail" : "mage@layui.com",
"userSex" : "男",
"userStatus" : "正常使用",
"userGrade" : "超级会员",
"userEndTime" : "2017-05-10 10:30"
}]
\ No newline at end of file
/** layui-v1.0.9_rls MIT License By http://www.layui.com */
blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}html{font:12px 'Helvetica Neue','PingFang SC',STHeitiSC-Light,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}a,button,input{-webkit-tap-highlight-color:rgba(255,0,0,0)}a{text-decoration:none;background:0 0}a:active,a:hover{outline:0}table{border-collapse:collapse;border-spacing:0}li{list-style:none}b,strong{font-weight:700}h1,h2,h3,h4,h5,h6{font-weight:500}address,cite,dfn,em,var{font-style:normal}dfn{font-style:italic}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}img{border:0;vertical-align:bottom}.layui-inline,input,label{vertical-align:middle}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0;outline:0}button,select{text-transform:none}select{-webkit-appearance:none;border:none}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=1.0.7);src:url(../font/iconfont.eot?v=1.0.7#iefix) format('embedded-opentype'),url(../font/iconfont.woff?v=1.0.7) format('woff'),url(../font/iconfont.ttf?v=1.0.7) format('truetype'),url(../font/iconfont.svg?v=1.0.7#iconfont) 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-box,.layui-box *{-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important;box-sizing:content-box!important}.layui-border-box,.layui-border-box *{-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1}.layui-edge,.layui-upload-iframe{position:absolute;width:0;height:0}.layui-edge{border-style:dashed;border-color:transparent;overflow:hidden}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:active{background-color:#d2d2d2!important;color:#fff!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-upload-iframe{border:0;visibility:hidden}.layui-upload-enter{border:1px solid #009E94;background-color:#009E94;color:#fff;-webkit-transform:scale(1.1);transform:scale(1.1)}.layui-m-layer{position:relative;z-index:19891014}.layui-m-layer *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.layui-m-layermain,.layui-m-layershade{position:fixed;left:0;top:0;width:100%;height:100%}.layui-m-layershade{background-color:rgba(0,0,0,.7);pointer-events:auto}.layui-m-layermain{display:table;font-family:Helvetica,arial,sans-serif;pointer-events:none}.layui-m-layermain .layui-m-layersection{display:table-cell;vertical-align:middle;text-align:center}.layui-m-layerchild{position:relative;display:inline-block;text-align:left;background-color:#fff;font-size:14px;border-radius:5px;box-shadow:0 0 8px rgba(0,0,0,.1);pointer-events:auto;-webkit-overflow-scrolling:touch;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}@-webkit-keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.layui-m-anim-scale{animation-name:layui-m-anim-scale;-webkit-animation-name:layui-m-anim-scale}@-webkit-keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.layui-m-anim-up{-webkit-animation-name:layui-m-anim-up;animation-name:layui-m-anim-up}.layui-m-layer0 .layui-m-layerchild{width:90%;max-width:640px}.layui-m-layer1 .layui-m-layerchild{border:none;border-radius:0}.layui-m-layer2 .layui-m-layerchild{width:auto;max-width:260px;min-width:40px;border:none;background:0 0;box-shadow:none;color:#fff}.layui-m-layerchild h3{padding:0 10px;height:60px;line-height:60px;font-size:16px;font-weight:400;border-radius:5px 5px 0 0;text-align:center}.layui-m-layerbtn span,.layui-m-layerchild h3{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-m-layercont{padding:50px 30px;line-height:22px;text-align:center}.layui-m-layer1 .layui-m-layercont{padding:0;text-align:left}.layui-m-layer2 .layui-m-layercont{text-align:center;padding:0;line-height:0}.layui-m-layer2 .layui-m-layercont i{width:25px;height:25px;margin-left:8px;display:inline-block;background-color:#fff;border-radius:100%;-webkit-animation:layui-m-anim-loading 1.4s infinite ease-in-out;animation:layui-m-anim-loading 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-m-layerbtn,.layui-m-layerbtn span{position:relative;text-align:center;border-radius:0 0 5px 5px}.layui-m-layer2 .layui-m-layercont p{margin-top:20px}@-webkit-keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}@keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}.layui-m-layer2 .layui-m-layercont i:first-child{margin-left:0;-webkit-animation-delay:-.32s;animation-delay:-.32s}.layui-m-layer2 .layui-m-layercont i.layui-m-layerload{-webkit-animation-delay:-.16s;animation-delay:-.16s}.layui-m-layer2 .layui-m-layercont>div{line-height:22px;padding-top:7px;margin-bottom:20px;font-size:14px}.layui-m-layerbtn{display:box;display:-moz-box;display:-webkit-box;width:100%;height:50px;line-height:50px;font-size:0;border-top:1px solid #D0D0D0;background-color:#F2F2F2}.layui-m-layerbtn span{display:block;-moz-box-flex:1;box-flex:1;-webkit-box-flex:1;font-size:14px;cursor:pointer}.layui-m-layerbtn span[yes]{color:#40AFFE}.layui-m-layerbtn span[no]{border-right:1px solid #D0D0D0;border-radius:0 0 0 5px}.layui-m-layerbtn span:active{background-color:#F6F6F6}.layui-m-layerend{position:absolute;right:7px;top:10px;width:30px;height:30px;border:0;font-weight:400;background:0 0;cursor:pointer;-webkit-appearance:none;font-size:30px}.layui-m-layerend::after,.layui-m-layerend::before{position:absolute;left:5px;top:15px;content:'';width:18px;height:1px;background-color:#999;transform:rotate(45deg);-webkit-transform:rotate(45deg);border-radius:3px}.layui-m-layerend::after{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}body .layui-m-layer .layui-m-layer-footer{position:fixed;width:95%;max-width:100%;margin:0 auto;left:0;right:0;bottom:10px;background:0 0}.layui-m-layer-footer .layui-m-layercont{padding:20px;border-radius:5px 5px 0 0;background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn{display:block;height:auto;background:0 0;border-top:none}.layui-m-layer-footer .layui-m-layerbtn span{background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn span[no]{color:#FD482C;border-top:1px solid #c2c2c2;border-radius:0 0 5px 5px}.layui-m-layer-footer .layui-m-layerbtn span[yes]{margin-top:10px;border-radius:5px}body .layui-m-layer .layui-m-layer-msg{width:auto;max-width:90%;margin:0 auto;bottom:-150px;background-color:rgba(0,0,0,.7);color:#fff}.layui-m-layer-msg .layui-m-layercont{padding:10px 20px}
\ No newline at end of file
/** layui-v1.0.9_rls MIT License By http://www.layui.com */
html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-h3,.layui-code-view{position:relative;font-size:12px}.layui-code-view{display:block;margin:10px 0;padding:0;border:1px solid #ddd;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New}.layui-code-h3{padding:0 10px;height:30px;line-height:30px;border-bottom:1px solid #ddd}.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 5px;border-left:1px solid #ddd;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view pre{margin:0}.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}
\ No newline at end of file
/** layui-v1.0.9_rls MIT License By http://www.layui.com */
#layuicss-laydatecss{display:none;position:absolute;width:1989px}.laydate_body .laydate_box,.laydate_body .laydate_box *{margin:0;padding:0;box-sizing:content-box}.laydate-icon,.laydate-icon-dahong,.laydate-icon-danlan,.laydate-icon-default,.laydate-icon-molv{height:22px;line-height:22px;padding-right:20px;border:1px solid #C6C6C6;background-repeat:no-repeat;background-position:right center;background-color:#fff;outline:0}.laydate-icon-default{background-image:url(../skins/default/icon.png)}.laydate-icon-danlan{border:1px solid #B1D2EC;background-image:url(../skins/danlan/icon.png)}.laydate-icon-dahong{background-image:url(../skins/dahong/icon.png)}.laydate-icon-molv{background-image:url(../skins/molv/icon.png)}.laydate_body .laydate_box{width:240px;font:12px '\5B8B\4F53';z-index:99999999;*overflow:hidden;_margin:0;_position:absolute!important}.laydate_body .laydate_box li{list-style:none}.laydate_body .laydate_box .laydate_void{cursor:text!important}.laydate_body .laydate_box cite,.laydate_body .laydate_box label{position:absolute;width:0;height:0;border-width:5px;border-style:dashed;border-color:transparent;overflow:hidden;cursor:pointer}.laydate_body .laydate_box .laydate_time,.laydate_body .laydate_box .laydate_yms{display:none}.laydate_body .laydate_box .laydate_show{display:block}.laydate_body .laydate_box input{outline:0;font-size:14px;background-color:#fff;color:#333}.laydate_body .laydate_top{position:relative;height:26px;padding:5px;*width:100%;z-index:99}.laydate_body .laydate_ym{position:relative;float:left;height:24px;cursor:pointer}.laydate_body .laydate_ym input{float:left;height:24px;line-height:24px;text-align:center;border:none;cursor:pointer}.laydate_body .laydate_ym .laydate_yms{position:absolute;left:-1px;top:24px;height:181px}.laydate_body .laydate_y{width:121px;margin-right:6px}.laydate_body .laydate_y input{width:64px;margin-right:15px}.laydate_body .laydate_y .laydate_yms{width:121px;text-align:center}.laydate_body .laydate_y .laydate_yms a{position:relative;display:block;height:20px}.laydate_body .laydate_y .laydate_yms ul{height:139px;padding:0;*overflow:hidden}.laydate_body .laydate_y .laydate_yms ul li{float:left;width:60px;height:20px;line-height:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate_body .laydate_m{width:99px}.laydate_body .laydate_m .laydate_yms{width:99px;padding:0}.laydate_body .laydate_m input{width:42px;margin-right:15px}.laydate_body .laydate_m .laydate_yms span{display:block;float:left;width:42px;margin:5px 0 0 5px;line-height:24px;text-align:center;_display:inline}.laydate_body .laydate_choose{display:block;float:left;position:relative;width:20px;height:24px}.laydate_body .laydate_choose cite,.laydate_body .laydate_tab cite{left:50%;top:50%}.laydate_body .laydate_chtop cite{margin:-7px 0 0 -5px;border-bottom-style:solid}.laydate_body .laydate_chdown cite,.laydate_body .laydate_ym label{top:50%;margin:-2px 0 0 -5px;border-top-style:solid}.laydate_body .laydate_chprev cite{margin:-5px 0 0 -7px}.laydate_body .laydate_chnext cite{margin:-5px 0 0 -2px}.laydate_body .laydate_ym label{right:28px}.laydate_body .laydate_table{width:230px;margin:0 5px;border-collapse:collapse;border-spacing:0}.laydate_body .laydate_table td{width:31px;text-align:center;cursor:pointer;font-size:12px}.laydate_body .laydate_table thead th{font-weight:400;font-size:12px;text-align:center}.laydate_body .laydate_bottom{position:relative;height:22px;line-height:20px;padding:5px;font-size:12px}.laydate_body .laydate_bottom #laydate_hms{position:relative;z-index:1;float:left}.laydate_body .laydate_time{position:absolute;left:5px;bottom:26px;width:129px;height:125px;*overflow:hidden}.laydate_body .laydate_time .laydate_hmsno{padding:5px 0 0 5px}.laydate_body .laydate_time .laydate_hmsno span{display:block;float:left;width:24px;height:19px;line-height:19px;text-align:center;cursor:pointer;*margin-bottom:-5px}.laydate_body .laydate_time1{width:228px;height:154px}.laydate_body .laydate_time1 .laydate_hmsno{padding:6px 0 0 8px}.laydate_body .laydate_time1 .laydate_hmsno span{width:21px;height:20px;line-height:20px}.laydate_body .laydate_msg{left:49px;bottom:67px;width:141px;height:auto;overflow:hidden}.laydate_body .laydate_msg p{padding:5px 10px}.laydate_body .laydate_bottom li{float:left;height:20px;line-height:20px;border-right:none;font-weight:900}.laydate_body .laydate_bottom .laydate_sj{width:33px;text-align:center;font-weight:400}.laydate_body .laydate_bottom input{float:left;width:21px;height:20px;line-height:20px;border:none;text-align:center;cursor:pointer;font-size:12px;font-weight:400}.laydate_body .laydate_bottom .laydte_hsmtex{height:20px;line-height:20px;text-align:center}.laydate_body .laydate_bottom .laydte_hsmtex span{position:absolute;width:20px;top:0;right:0;cursor:pointer}.laydate_body .laydate_bottom .laydte_hsmtex span:hover{font-size:14px}.laydate_body .laydate_bottom .laydate_btn{position:absolute;right:5px;top:5px}.laydate_body .laydate_bottom .laydate_btn a{float:left;height:20px;padding:0 6px;_padding:0 5px}.laydate_body .laydate_table td,.laydate_body .laydate_table thead{height:21px!important;line-height:21px!important}.laydate-icon{border:1px solid #C6C6C6;background-image:url(icon.png)}.laydate_body .laydate_bottom #laydate_hms,.laydate_body .laydate_bottom .laydate_btn a,.laydate_body .laydate_box,.laydate_body .laydate_table,.laydate_body .laydate_table td,.laydate_body .laydate_time,.laydate_body .laydate_ym,.laydate_body .laydate_ym .laydate_yms{border:1px solid #ccc}.laydate_body .laydate_bottom .laydte_hsmtex,.laydate_body .laydate_choose,.laydate_body .laydate_table thead,.laydate_body .laydate_y .laydate_yms a{background-color:#F6F6F6}.laydate_body .laydate_box,.laydate_body .laydate_time,.laydate_body .laydate_ym .laydate_yms{box-shadow:2px 2px 5px rgba(0,0,0,.1)}.laydate_body .laydate_box{border-top:none;border-bottom:none;background-color:#fff;color:#333}.laydate_body .laydate_box .laydate_void{color:#ccc!important}.laydate_body .laydate_box .laydate_void:hover{background-color:#fff!important}.laydate_body .laydate_box a,.laydate_body .laydate_box a:hover{text-decoration:none;blr:expression(this.onFocus=this.blur());cursor:pointer;color:#333}.laydate_body .laydate_box a:hover{text-decoration:none;color:#666}.laydate_body .laydate_click{background-color:#eee!important}.laydate_body .laydate_bottom #laydate_hms,.laydate_body .laydate_choose:hover,.laydate_body .laydate_table td,.laydate_body .laydate_time,.laydate_body .laydate_y .laydate_yms a:hover{background-color:#fff}.laydate_body .laydate_top{border-top:1px solid #C6C6C6}.laydate_body .laydate_ym .laydate_yms{border:1px solid #C6C6C6;background-color:#fff}.laydate_body .laydate_y .laydate_yms a{border-bottom:1px solid #C6C6C6}.laydate_body .laydate_y .laydate_yms .laydate_chdown{border-top:1px solid #C6C6C6;border-bottom:none}.laydate_body .laydate_choose{border-left:1px solid #C6C6C6}.laydate_body .laydate_chprev{border-left:none;border-right:1px solid #C6C6C6}.laydate_body .laydate_chtop cite{border-bottom-color:#666}.laydate_body .laydate_chdown cite,.laydate_body .laydate_ym label{border-top-color:#666}.laydate_body .laydate_chprev cite{border-right-style:solid;border-right-color:#666}.laydate_body .laydate_chnext cite{border-left-style:solid;border-left-color:#666}.laydate_body .laydate_table td{border:none}.laydate_body .laydate_table .laydate_nothis{color:#999}.laydate_body .laydate_table thead th{border-bottom:1px solid #ccc}.laydate_body .laydate_bottom,.laydate_body .laydate_bottom .laydte_hsmtex{border-bottom:1px solid #C6C6C6}.laydate_body .laydate_bottom .laydate_sj{border-right:1px solid #C6C6C6;background-color:#F6F6F6}.laydate_body .laydate_bottom input{background-color:#fff}.laydate_body .laydate_bottom .laydate_btn{border-right:1px solid #C6C6C6}.laydate_body .laydate_bottom .laydate_v{position:absolute;left:10px;top:6px;font-family:Courier;z-index:0;color:#999}.laydate_body .laydate_bottom .laydate_btn a{border-right:none;background-color:#F6F6F6}.laydate_body .laydate_bottom .laydate_btn a:hover{color:#000;background-color:#fff}.laydate_body .laydate_m .laydate_yms span:hover,.laydate_body .laydate_table td:hover,.laydate_body .laydate_time .laydate_hmsno span:hover,.laydate_body .laydate_y .laydate_yms ul li:hover{background-color:#F3F3F3}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论