2014-11-10 3 views
0

jQuery와 레이블에 정말 이상한 문제가 있습니다. 예를 들어 레이블의 배경을 chaning 할 때 모든 것이 작동하기 때문에 이상합니다. font-weight, 그러나 about : selector 전에는 실패합니다.jquery가 레이블을 변경하지 않습니다 : before

아이디어가 있으십니까?

JQuery와 :

$(".something").click(function (event) { 
    $(".somediv label:before").css("background", "#000") 

}); 

HTML :

jQuery를 그들이 DOM 내에 존재하지 않는 사이비 요소를 선택하는 데 사용할 수 없습니다
 <ul> 
     <li class="somediv"> 
      <label for="winter">winter</label> 
      <input type="checkbox" class="something" id="winter" /> 
     </li> 
    </ul> 
+3

: class으로, 예를 들면 :

$(".something").click(function (event) { $(".somediv label").addClass('active'); }); 

당신은 픽업이 CSS의 클래스, 그리고 거기 사이비 요소를 수정할 수 있습니다 DOM. – George

답변

4

. 필요한 것을 얻으려면 jQuery를 사용하여 부모 label 요소를 변경해야합니다. 그들이에 포함되지 않기 때문에 당신은 CSS 의사 요소를 조작 할 수

.somediv label.active:before { 
    background-color: #000; 
} 
관련 문제