2016-06-05 2 views
-2

첫 번째 클릭시 초기 색상에 따라 div의 색상을 변경하려고 시도하고 두 번째 클릭시 다시 변경하려고합니다. 첫 번째 클릭에서 작동하지만 두 번째로는 속성이 업데이트되지 않는 것처럼 초기 색을 가진 div가 계속 표시됩니다. 감사!Javascript에서 div를 클릭 할 때 두 번째 클릭 할 때 색상 변경

<script> 

function change(div){ 
    if (div.style.backgroundColor = "rgb(252,198,162)")  
{ 
    div.style.background="rgb(220,20,60)"; 
} 
else 
{ 
    div.style.background="rgb(252,198,162)"; 
} 
} 
</script> 

<div class="cell_l" id="mydiv" style= "background-color: rgb(252,198,162);" onclick="change(this);"></div> 
+0

디버거를 사용하는 방법을 배우기 때문에 주제가 아닙니다. – nicael

답변

1

당신은 당신의 if 문 내부의 할당 연산자 = 대신 ==을 사용하고 있습니다.

rgb(252, 198, 162) 

내가 위에서뿐만 아니라 변화를 만들어 :

if (div.style.backgroundColor == "rgb(252, 198, 162)") 

는 또한, div.style.backgroundColor 반환 등의 쉼표 후 공백으로 RGB 색상을 백업 :

변경 사항을 확인합니다.

업데이트 바이올린 : https://jsfiddle.net/11r7L39y/

@nicael가 언급 한 바와 같이, 콘솔을 사용하는 방법에 대해 알아보세요. 오른쪽 클릭 -> 검사 -> 콘솔.이 경우에는 콘솔 오류가 없었을 것이지만 나중에 참조 할 때이를 염두에 두십시오.

관련 문제