2014-10-17 9 views
-1

하나의 클래스로 3 개의 div 요소가 있는데, 그 중 하나를 가리키면 내부 요소의 배경을 빨간색으로 바꿔야한다고 가정 해 봅시다. 그래 나도 알아 ... 난 ',Jquery 호버링 문제

<div class="content"><div class="yellow_hover"></div></div> 
<div class="content"><div class="yellow_hover"></div></div> 
<div class="content"><div class="yellow_hover"></div></div> 

jQuery를

$('.content').each(function(i, div) { 
div.id="div" + (i+1); 
}); 

<div class="content" id="div1"></div> 
<div class="content" id="div2"></div> 
<div class="content" id="div3"></div> 

지금 나는이 같은 뭔가가 필요 결과 :이 같은 각 요소에 대한 ID를 추가하는 tryed 분실 :

$(div+i).hover(function() { 
    $('.yellow_hover').css('background-color','#FF9900'); 
}); 
+0

에 대한 클래스 (yellow_hover)

참조 JQuery와 문서를 추가는 정말 결과인가? .yellow_hover DIV가 죽으면 사라질까요? – Nenotlep

답변

3

이 경우 js가 필요하지 않습니다. 당신은 사업부에 id를 추가하는 코드를 제거 할 필요가 없습니다

.content:hover .yellow_hover { 
    background-color: #FF9900; 
} 

JsFiddle

+0

이 CSS는 두 div의 배경색을 변경합니다. 내용 div 안에는 작은 영역 (yellow_hover div)이 있습니다. 큰 div를 가리키면 yellow_hover의 색상이 변경되어야합니다. –

+0

@RenzoCJ는 CSS가 작동하는 방식이 아닙니다. 수정 된 바이올린을 확인하십시오. –

+0

당신은 맞습니다. ".content : hover .yellow : hover"를 보니 유감스럽게 생각합니다 ... –

1

: 당신의 CSS에 다음과 같은 규칙을 설정합니다. JS에서

$('.content').hover(function() { 
    $(this).find('.yellow_hover').css('background-color','#FF9900'); 
}, function(){ 
    $(this).find('.yellow_hover').css('background-color','#FFFFFF'); 
}); 

DEMO

+0

CSS? –

+0

그렇게 쉬운가요? 저렇게. 덕분에 –

+0

예, 그것은 쉽습니다 .. 호버 켜기 및 두 번째 가져 오기 첫 번째 기능 끄기 –

0

을 유혹하는 코드 아래에 시도 당신은 그렇게 할 필요가 :

$('body').on('hover','[id^="div"]',function() { 
    $('[id^="div"]').removeAttr("background-color"); 
    $(this).css('background-color','#FF9900'); 
}); 
1

는 "yellow_box"

JQuery와

같은 요소를 클래스를 부여
$(".yellow_box").hover(
    function() { 
    $(this).addClass("yellow_hover"); 
    }, function() { 
    $(this).removeClass("yellow_hover"); 
} 
); 
우리가 사업부를 가져 가면

, 우리는 자세한 내용 http://api.jquery.com/hover/