2012-09-09 2 views
0

다른 배경색으로 새 클래스를 추가하여 배경색을 변경하려고합니다. 그러나 색깔은 변하지 않습니다. 그것은 여전히 ​​같은 색깔입니다! 먼저 오래된 배경색을 제거해야합니까? 나는 내 코드가 작동해야한다고 생각한다!?jQuery addClass로 배경 변경

$(".displayControl a:first").addClass("activeButton"); 

당신은 CSS의 "특이성"규칙에 의해 격파되고있는 CSS

.displayControl 
{ 
padding: 20px 0 0 0; 
float: right; 
} 

.displayControl a 
{ 
background: #B7BABD; 
margin: 0 5px 0 0; 
padding: 5px 10px 5px 10px; 
color: #ffffff; 
} 

.activeButton 
{ 
background: #83AEE6; 
} 
+0

포스트 관련된 마크 업 또는 jsfiddle 링크를 참조하십시오, 그래서 우리는 더 나은 질문을 이해할 수있다. – Jashwant

+0

jsfiddle please .. 선택기가 작동하는지 확인해야합니다. – ffffff01

답변

4

. 더 구체적인 지시문은 스타일 시트가 더 높을지라도 당일 승리합니다.

에 마지막 지침을 변경해보십시오 :

.displayControl a.activeButton 
{ 
background: #83AEE6; 
} 
+0

좋은 작업! 감사! –

1

귀하의 .activeButton CSS의 선언은 충분히 특정하지 않다, (가) ".displayControl는"선택은 그 선언의 배경이 사용되도록 더 구체적이다 (이 우선 순위가 덜 구체적인 .activeButton 선언을 통해). 이처럼, 당신의 activeButton 선택은보다 구체적인해야한다 : .activeButton

대신이 시도보다

.displayControl a.activeButton{ 
    background: #83AEE6; 
} ​ 

working fiddle

1

.displayControl a보다 우선 순위가,

.displayControl 
{ 
padding: 20px 0 0 0; 
float: right; 
} 

.displayControl a 
{ 
background: #B7BABD; 
margin: 0 5px 0 0; 
padding: 5px 10px 5px 10px; 
color: #ffffff; 
} 

.displayControl .activeButton 
{ 
background: #83AEE6; 
}​ 

Demo

0

KREATIV,

당신이 시도시겠습니까 :

<div class='asd'> 
    Something 
    </div> 

    .asd{background:#B7BABD;} 
    .new{background:red;} 

    $('div.asd').addClass(function(){ 
    $(this).css('background',''); 
    $(this).addClass('new');  
    }); 

http://jsfiddle.net/QV2m3/

감사