Bootstrap 프레임 워 크 트 리 메뉴(Tree)의 인 스 턴 스 코드 만 들 기
전제:Bootstrap 과 JQ 의 인용 을 먼저 추가 합 니 다.
<link rel="stylesheet" type="text/css" href="bootstrap-3.3.0-dist/dist/css/bootstrap.min.css" rel="external nofollow" >
<script src="bootstrap-3.3.0-dist/dist/js/jquery-1.11.2.min.js"></script>
<script src="bootstrap-3.3.0-dist/dist/js/bootstrap.min.js"></script>
HTML CODE
<div class="tree well">
<ul>
<li> <span><i class="icon-folder-open"></i> </span>
<ul>
<li> <span><i class="icon-minus-sign"></i> </span>
<ul>
<li> <span><i class="icon-leaf"></i> </span> </li>
</ul>
</li>
<li> <span><i class="icon-minus-sign"></i> </span>
<ul>
<li> <span><i class="icon-leaf"></i> </span> </li>
<li> <span><i class="icon-minus-sign"></i> </span>
<ul>
<li> <span><i class="icon-minus-sign"></i> </span>
<ul>
<li> <span><i class="icon-leaf"></i> </span> </li>
<li> <span><i class="icon-leaf"></i> </span> </li>
</ul>
</li>
<li> <span><i class="icon-leaf"></i> </span> </li>
</ul>
</li>
<li> <span><i class="icon-leaf"></i> </span> </li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
CSS CODE(트 리 메뉴 에 스타일 을 추가 하여 Bootstrap 프레임 워 크 스타일 에 맞 게 합 니 다)
.tree {
min-height:20px;
padding:19px;
margin-bottom:20px;
background-color:#fbfbfb;
border:1px solid #999;
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05)
}
.tree li {
list-style-type:none;
margin:0;
padding:10px 5px 0 5px;
position:relative
}
.tree li::before, .tree li::after {
content:'';
left:-20px;
position:absolute;
right:auto
}
.tree li::before {
border-left:1px solid #999;
bottom:50px;
height:100%;
top:0;
width:1px
}
.tree li::after {
border-top:1px solid #999;
height:20px;
top:25px;
width:25px
}
.tree li span {
-moz-border-radius:5px;
-webkit-border-radius:5px;
border:1px solid #999;
border-radius:5px;
display:inline-block;
padding:3px 8px;
text-decoration:none
}
.tree li.parent_li>span {
cursor:pointer
}
.tree>ul>li::before, .tree>ul>li::after {
border:0
}
.tree li:last-child::before {
height:30px
}
.tree li.parent_li>span:hover, .tree li.parent_li>span:hover+ul li span {
background:#eee;
border:1px solid #94a0b4;
color:#000
}
JS CODE
<script type="text/javascript">
// ,
$(function(){
$('.tree li:has(ul)').addClass('parent_li').find(' > span').attr('title', 'Collapse this branch');
$('.tree li.parent_li > span').on('click', function (e) {
var children = $(this).parent('li.parent_li').find(' > ul > li');
if (children.is(":visible")) {
children.hide('fast');
$(this).attr('title', 'Expand this branch').find(' > i').addClass('icon-plus-sign').removeClass('icon-minus-sign');
} else {
children.show('fast');
$(this).attr('title', 'Collapse this branch').find(' > i').addClass('icon-minus-sign').removeClass('icon-plus-sign');
}
e.stopPropagation();
});
});
</script>
효과:Bootstrap 스타일 에 맞 는 나 무 를 이렇게 만 들 었 습 니 다.장점 은 깔끔 하고 아름 답 습 니 다.
이것 은 demo 입 니 다.그래서 트 리 의 값 은 html 에 쓰 여 있 습 니 다.그러나 실제 항목 에 서 는 트 리 메뉴 가 동적 으로 생 성 되 지만 Bootstrap 은 TreeView 와 같은 컨트롤 을 제공 하지 않 습 니 다.데 이 터 를 연결 하면 나무 로 동적 으로 생 성 될 수 있 기 때문에 트 리 를 만 드 는 논 리 는 모두 JS 코드 로 수 동 으로 작성 해 야 합 니 다.이 과정 은 정말 좀 번거롭다.
물론 시중 에 봉 인 된 트 리 메뉴 의 플러그 인,DTree,TreeList widget,Ztree,jQuery 등 도 많 지만 외관 과 Bootstrap 프레임 이 좀 어 울 리 지 않 습 니 다.
이러한 절충 방법 은 장점 을 취하 여 단점 을 보완 하고 Bootstrap 의 스타일 을 봉 인 된 트 리 플러그 인 에 응용 하여 수 요 를 만족 시 키 는 것 이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
부트스트랩 5 스티커Sticky는 페이지의 특정 영역에서 요소를 잠글 수 있도록 하는 구성 요소입니다. 수동 설치(zip 패키지) 부트스트랩 이미지 구성 요소를 활용하고 프로젝트에서 사용하려면 먼저 을 설치해야 합니다. MDB CLI ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.