2013-08-13 4 views
1

내 버튼을 클릭하면이 복사본의 텍스트가 변경된 후
텍스트의 색상이 변경되어 다른 작업을 수행하려고합니다. 요소에 특정 CSS 값이있는 경우 수행

나는 다음을 썼다, 그러나 작업 콘솔을 얻을 수 또는 경고하지 않다 :
$('#my_button').unbind('click').bind('click', function() { 

    $(this).css('background', '#666666'); 
    $('#my_button').css('color', '#f58733'); 

    if ($('#my_button').css('color') == '#f58733') { 
     alert('my_button has the color orange'); 
    } 

}); 

http://codepen.io/leongaban/pen/IltKJ

은 내가 Tamas's answer here에서 발견 된 CSS를 시도했다.

경고가 표시되지 않는 이유에 대한 의견이 있으십니까?

+6

일부 브라우저를 (파이어 폭스는 특히 내가 생각하기에)'# xxxxxx'보다는'rbg (x, x, x)'를 사용하십시오. 이것은 당신이 직면 한 문제 일 수 있습니다. –

+0

@ Bucky24, 그게 정확히 무슨 일이야. – musicnothing

+4

color 속성을 직접 설정하는 대신 클래스 사용 시도 –

답변

3

대신이 시도 :

Codepen

$('#my_button').unbind('click').bind('click', function() { 
    $(this).addClass('clicked'); 
    if ($('#my_button').is('.clicked')) { //or use $('#my_button').hasClass('clicked') 
     alert('my_button has the color orange'); 
    } 
}); 
+0

감사! : D 해당 버튼을 클릭 한 후 페이지를로드하는 데 문제가있었습니다. 페이지가로드되지만 색상이 변경되지 않으므로 색상을 변경하려면 다시 클릭해야합니다. 그래서 페이지로드로 인해 색상 변경이 중단 된 것 같습니다. –

1

내가 크롬에서 테스트 코드를 .... 업데이트 : 여기

$('#my_button').unbind('click').bind('click', function() { 

$(this).css('background', '#666666'); 
$('#my_button').css('color', '#f58733'); 

var color = $('#my_button').css('color'); 
alert(color); 

if(color == 'rgb(245, 135, 51)'){ 
alert('Hi'); 
} 

}); 

확인 : http://codepen.io/anon/pen/Dilux

관련 문제