2015-01-14 2 views

답변

1

이 기능을 추가 : 하나를 사용하여 div.panes > div 하나를 제거하려면

$("li").click(function() { 
    $(this).remove(); 
    $("div.panes > div").remove(); 
}); 

을 시도 :

$("li").click(function() { 
 
var i = $('li').index(this); 
 
var divs = $("div.panes > div"); 
 
for (var j=0;j<divs.length;j++) { 
 
    if (j == i) { 
 
    if ($("div.panes > div").eq(i).css('display') == 'none') { 
 
     $("div.panes > div").eq(i).css("display", "block"); 
 
    } else { 
 
     $("div.panes > div").eq(i).css("display", "none"); 
 
    } 
 
    } else { 
 
    $("div.panes > div").eq(j).css("display", "none"); 
 
    } 
 
} 
 
});
/* root element for tabs */ 
 
ul.tabs { 
 
    margin:0 !important; 
 
    padding:0; 
 
    height:30px; 
 
    border-bottom:1px solid #666; 
 
} 
 

 
/* single tab */ 
 
ul.tabs li { 
 
    float:left; 
 
    padding:0; 
 
    margin:0; 
 
    list-style-type:none; 
 
} 
 

 
/* link inside the tab. uses a background image */ 
 
ul.tabs a { 
 
    float:left; 
 
    font-size:13px; 
 
    display:block; 
 
    padding:5px 30px; 
 
    text-decoration:none; 
 
    border:1px solid #666; 
 
    border-bottom:0px; 
 
    height:18px; 
 
    background-color:#efefef; 
 
    color:#777; 
 
    margin-right:2px; 
 
    position:relative; 
 
    top:1px; 
 
    outline:0; 
 
    -moz-border-radius:4px 4px 0 0; 
 
} 
 

 
ul.tabs a:hover { 
 
    background-color:#F7F7F7; 
 
    color:#333; 
 
} 
 

 
/* selected tab */ 
 
ul.tabs a.current { 
 
    background-color:#ddd; 
 
    border-bottom:1px solid #ddd; 
 
    color:#000; 
 
    cursor:default; 
 
} 
 

 

 
/* tab pane */ 
 
.panes div { 
 
    display:none; 
 
    border:1px solid #666; 
 
    border-width:0 1px 1px 1px; 
 
    min-height:150px; 
 
    padding:15px 20px; 
 
    background-color:#ddd; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul class="tabs"> 
 
    <li><a href="#">Tab 1</a></li> 
 
    <li><a href="#">Tab 2</a></li> 
 
    <li><a href="#">Tab 3</a></li> 
 
    </ul> 
 
    
 
    <!-- tab "panes" --> 
 
    <div class="panes"> 
 
    <div>pane 1 content</div> 
 
    <div>pane 2 content</div> 
 
    <div>pane 3 content</div> 
 
    </div>
:

$("li").click(function() { 
    var i = $('li').index(this); 
    $("div.panes > div").eq(i).remove(); 
    $(this).remove(); 
}); 

이 요소를 숨기려면이 시도

+0

나는 그 탭을 파괴하고 싶지는 않았다. 나는 그것을 닫을 수 있기를 원한다. 그래서 다른 탭이 활성 상태가 아니며 나중에 탭을 다시 열 수있다. @JuanSedano – cyteroxy

+0

코드를 추가하여 탭을 닫습니다. – JuanSedano

+0

코드에 여전히 문제가 있습니다. 탭을 열려면 두 번 클릭해야합니다. 탭이 열려 있고 다른 탭을 클릭하면 바로 열리지 않지만 열린 탭이 닫힙니다. 탭을 열었을 때 탭을 클릭하면 바로 닫히고 다른 탭을 클릭하면 바로 열리도록이 코드를 수정할 수 있습니까? @JuanSedano – cyteroxy

관련 문제