2013-01-02 5 views
2

동일한 클래스 이름 "dp-check"을 가진 10 개의 HTML div가 있는데, 이는 구성 요소로 을 사용하고 동일한 페이지에서 많은 시간에 사용되었습니다. 이제 내 문제는 처음에는 모든 div가 숨겨져 있습니다. 그 중 하나를 클릭 한 다음 "표시"가 "인라인"(해당 인스턴스 만)으로 설정되고 다른 모든 항목이 숨겨지면 같은 클래스 이름을 가진 다른 div가 닫힐 때 닫고 싶습니다. 또는 페이지의 다른 곳을 클릭합니다.클릭하면 동일한 클래스 이름을 가진 다른 요소를 숨기기

+4

보이지 않는 요소를 어떻게 클릭 할 수 있습니까? – PeeHaa

+1

코드를 표시하여 시도한 내용 (HTML, CSS, JS)을 표시하면 훨씬 도움이 될 수 있습니다. – Lowkase

+0

div ("dp-check")의 맨 위에 하나의 레이아웃 (div class = "toggle")이 있습니다. 레이아웃 (div class = "toggle")을 클릭하면 div ("dp-check")가 토글됩니다. 하지만 나는 페이지의 아무 곳이나 클릭해서 그것을 숨기고 싶다. –

답변

1

을이 :

function clickHandler(e){ 
    e = e || window.event; 
    var elements = document.getElementsByClassName('dp-check'); 
    for(var i = 0; i < elements.length; i++){ 
     elements[i].style.display = 'none'; // Hide all elements. 
    } 
    e.target.style.display = 'inline'; // Show the clicked element. 
} 

당신은 클릭 이벤트에 clickHandler을 지정해야합니다 요소에.

+0

몇 가지 수정 작업을했는데 매력처럼 보였습니다. 감사합니다 ... –

+0

도움이 될만한 점은 아무 문제가 없습니다. – Cerbrus

-1

당신은 페이지의 다른 곳은 jQuery를 함께 클릭 모든 dp-check div를 숨길 수 있습니다 : 시도

$('body').click(function (event) { 
    var $target = $(event.target); 
    if(!$target.hasClass("dp-check")) { 
    $("dp-check").css('display','none'); 
    } 
} 
관련 문제