修复 tree 组件增删改样式问题

This commit is contained in:
贤心 2019-05-31 15:32:30 +08:00
parent 27e2295cbc
commit 233aa02ad2
6 changed files with 25 additions and 22 deletions

2
dist/css/layui.css vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

2
dist/layui.all.js vendored

File diff suppressed because one or more lines are too long

View File

@ -23,7 +23,7 @@
<div id="test1"></div> <div id="test1"></div>
<div id="test2"></div> <div id="test2"></div>
<script src="../dist/layui.js"></script> <script src="../src/layui.js"></script>
<script> <script>
layui.use(['tree', 'layer'], function(){ layui.use(['tree', 'layer'], function(){
var tree = layui.tree var tree = layui.tree

View File

@ -1243,7 +1243,7 @@ body .layui-util-face .layui-layer-content{padding:0; background-color:#fff; co
.layui-tree-pack{display: none; padding-left: 20px; 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-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-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;} .layui-tree-entry{position: relative; padding: 3px 0; height: 20px; white-space: nowrap;}
.layui-tree-entry:hover{background-color: #eee;} .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{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-line .layui-tree-entry:hover .layui-tree-txt{color: #999; text-decoration: underline; transition: 0.3s;}
@ -1261,14 +1261,11 @@ body .layui-util-face .layui-layer-content{padding:0; background-color:#fff; co
.layui-tree-spread>.layui-tree-entry>.layui-tree-iconClick>.layui-tree-iconArrow:after{transform: rotate(90deg) translate(3px, 4px);} .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-txt{display: inline-block; vertical-align: middle; color: #555;}
.layui-tree-search{margin-bottom: 15px; color: #666;} .layui-tree-search{margin-bottom: 15px; color: #666;}
.layui-tree-btnGroup{display: none; position: absolute; top: 0; right: 0;} .layui-tree-btnGroup{visibility: hidden; display: inline-block; vertical-align: middle; position: relative; margin-left: 10px;}
.layui-tree-btnGroup .layui-btn{padding: 0 7px; border: none; background-color: rgba(0,0,0,0);} .layui-tree-btnGroup .layui-icon{display: inline-block; vertical-align: middle; padding: 0 2px; cursor: pointer;}
.layui-tree-btnGroup .layui-btn:first-child{border: none;} .layui-tree-btnGroup .layui-icon:hover{color: #999; transition: 0.3s;}
.layui-tree-entry:hover .layui-tree-btnGroup{display: block;} .layui-tree-entry:hover .layui-tree-btnGroup{visibility: visible;}
.layui-tree-editInput{position: absolute; left: 30px; z-index: 99; height: 20px; line-height: 20px; border: none; background-color: rgba(0,0,0,0);} .layui-tree-editInput{position: relative; height: 20px; line-height: 20px; padding: 0 3px; border: none; background-color: rgba(0,0,0,0.05);}
.layui-form .layui-tree-editInput{left: 58px;}
.layui-tree-line .layui-tree-editInput{left: 38px;}
.layui-tree-line.layui-form .layui-tree-editInput{left: 66px;}
.layui-tree-emptyText{text-align: center; color: #999;} .layui-tree-emptyText{text-align: center; color: #999;}

View File

@ -194,10 +194,10 @@ layui.define('form', function(exports){
//增删改按钮 //增删改按钮
,function(){ ,function(){
return options.renderContent ? ['<div class="layui-btn-group layui-tree-btnGroup">' return options.renderContent ? ['<div class="layui-btn-group layui-tree-btnGroup">'
,'<button class="layui-btn layui-btn-primary layui-btn-sm" data-type="add"><i class="layui-icon layui-icon-add-1"></i></button>' ,'<i class="layui-icon layui-icon-add-1" data-type="add"></i>'
,'<button class="layui-btn layui-btn-primary layui-btn-sm" data-type="edit"><i class="layui-icon layui-icon-edit"></i></button>' ,'<i class="layui-icon layui-icon-edit" data-type="edit"></i>'
,'<button class="layui-btn layui-btn-primary layui-btn-sm" data-type="del"><i class="layui-icon layui-icon-delete"></i></button>' ,'<i class="layui-icon layui-icon-delete" data-type="del"></i>'
,'</div>'].join(','): ''; ,'</div>'].join(''): '';
}() }()
,'</div></div>'].join('')); ,'</div></div>'].join(''));
@ -353,7 +353,7 @@ layui.define('form', function(exports){
,entry = elem.children('.'+ELEM_ENTRY) ,entry = elem.children('.'+ELEM_ENTRY)
,elemMain = entry.children('.'+ELEM_MAIN); ,elemMain = entry.children('.'+ELEM_MAIN);
entry.children('.layui-tree-btnGroup').on('click', '.layui-btn', function(e){ entry.children('.layui-tree-btnGroup').on('click', '.layui-icon', function(e){
layui.stope(e); //阻止节点操作 layui.stope(e); //阻止节点操作
var type = $(this).data("type") var type = $(this).data("type")
,packCont = elem.children('.'+ELEM_PACK) ,packCont = elem.children('.'+ELEM_PACK)
@ -446,7 +446,7 @@ layui.define('form', function(exports){
var text = elemMain.children('.layui-tree-txt').html(); var text = elemMain.children('.layui-tree-txt').html();
elemMain.children('.layui-tree-txt').html(''); elemMain.children('.layui-tree-txt').html('');
//添加输入框,覆盖在文字上方 //添加输入框,覆盖在文字上方
elemMain.append('<input type="text" class="layui-tree-editInput">'); elemMain.append('<input type="text" class="layui-inline layui-tree-editInput">');
//获取焦点 //获取焦点
elemMain.children('.layui-tree-editInput').val(text).focus(); elemMain.children('.layui-tree-editInput').val(text).focus();
//嵌入文字移除输入框 //嵌入文字移除输入框
@ -456,6 +456,9 @@ layui.define('form', function(exports){
input.remove(); input.remove();
elemMain.children('.layui-tree-txt').html(textNew); elemMain.children('.layui-tree-txt').html(textNew);
//同步数据
returnObj.data.label = textNew;
//节点修改的回调 //节点修改的回调
options.operate && options.operate(returnObj); options.operate && options.operate(returnObj);
}; };
@ -473,8 +476,9 @@ layui.define('form', function(exports){
//删除 //删除
}else{ }else{
//节点删除的回调 options.operate && options.operate(returnObj); //节点删除的回调
options.operate && options.operate(returnObj); returnObj.status = 'remove'; //标注节点删除
//若删除最后一个,显示空数据提示 //若删除最后一个,显示空数据提示
if(!elem.prev('.'+ELEM_SET)[0] && !elem.next('.'+ELEM_SET)[0] && !elem.parent('.'+ELEM_PACK)[0]){ if(!elem.prev('.'+ELEM_SET)[0] && !elem.next('.'+ELEM_SET)[0] && !elem.parent('.'+ELEM_PACK)[0]){
elem.remove(); elem.remove();
@ -581,6 +585,8 @@ layui.define('form', function(exports){
}; };
elem.remove(); elem.remove();
}; };
}); });
}; };