2009-10-18 6 views
0

코드를 유사한 블록 내부의 동일한 블록을 숨길 수 :는 표시하는 방법/JQuery와 함께

<div class="mama"> 
    <div class="son">Item 1</div> 
</div> 
<div class="mama"> 
    <div class="son">Item 2</div> 
</div> 

$(".mama").hover(
    function() { 
     $(".son").show(); 
    }, 
    function() { 
     $(".son").hide(); 
    } 
); 

앞으로 도움이됩니다. 감사!

+1

컨텍스트/기존 코드를 포함 할 수 있습니까? 귀하의 질문은 정말 그것 없이는 의미가 없습니다 ...! – richsage

답변

0

사용 hover() 이벤트 그냥 범위 관련 요소에 대한 당신의 행동이 있습니다

$("div.mama").hover(function() { 
    $(this).find("div.son").show(); 
}, function() { 
    $(this).find("div.son").hide(); 
}); 

영향을받는 요소의 아이들이를 제한 할 수있는 방법에 많은 변화가있다 .

+0

이것은 매우 긍정적이고 이해하기 쉬운 방법입니다. 고마워요! – anhtran

1

당신은 각 ".mama"블록 내부의 ".son"블록을 숨기는 방법을 요구하는 경우, 다음이 같은 것 : 당신이하고있는 모든 경우

$('.mama').each(function() { 
    var mama = $(this); 
    mama.hover(
    function() { mama.find('.son').show(); }, 
    function() { mama.find('.son').hide(); } 
); 
}); 
+0

복잡성이 더해질 필요가 없습니다. 내 대답을 보라. – cletus

+0

다음과 같이하면 ... $ ('. mama') ... 은 첫 번째 블록 만 적용됩니다. 우리는 다음과 같이해야합니다 : ... $ ("div.mama") ... Thank you! – anhtran

1

컨텐츠를 보이거나 숨기려면 jQuery가 필요하지 않습니다. CSS는 이미이 기능

.mama .son { 
     display:none; 
} 

.mama:hover .son { 
     display:block; 
} 
+0

IE6에서는 다음을 지원하지 않습니다. 앵커가 아닌 경우 마우스를 올려주세요. – cletus

+0

JQuery를 사용하여 다른 복잡한 문제에 대한 간단한 예제 만 제공합니다. 감사! – anhtran