2012-07-27 1 views
0

스위치를 사용하여 HTML 문서의 bgColor를 기능 만 사용하지 않고 변경하고 싶습니다. Plz 도움말. 나는 자바 스크립트에 초보자입니다. 내 코드는 다음과 같이이함수를 사용하여 스위치 없음을 사용하여 HTML 문서의 bgColor를 변경하는 방법

<html> 
<head> 
<script language="javascript"> 

var color; 
color = parseInt(prompt("Enter the color")); 

switch(color) 
{ 
case 1: 
     document.bgColor="red"; 
    break; 

case 2: 
     document.bgColor="blue"; 
    break; 
case 3: 
     document.bgColor="green"; 
    break; 
default : 
    alert("invalid"); 

} 


</script> 
</head> 
</html> 

답변

0
var color = "red"; // just an example 
document.body.style.backgroundColor = color; 
+0

여기에 오타가 있습니다. '' ''문자열은'backgroundColor' 속성에 유효한 값이 아닙니다. ''red ''와''rgb (3, 200, 7)''과''# 4Fcc90''같은 것들이 있습니다. 네가 뭔가 다른 것을 의미 할거라 확신한다. 이 답을 고쳐야합니다. –

+0

실제로는 은 실제 색상 자리 표시 자일뿐입니다. –

+0

@RayToal "<색상을 여기에 써라>"라고 생각했지만, HTML 태그처럼 보이기 때문에 혼란 스러울 수 있습니다. – apsillers

2

아마도 뭔가처럼? 대신 switch에 입력을 전달

var colors = [undefined, "red", "blue", "green"]; 
var input = parseInt(prompt("Enter the color")); 
var color = colors[input]; 

if(color != undefined) { 
    document.body.style.backgroundColor = color; 
} else { 
    alert("invalid"); 
} 

, 그냥 컬러 문자열을 가진 배열의 인덱스로 사용합니다.

또한 생각 : 당신이 당신의 컬러 출력 (즉, 단지 숫자 입력) 입력의 종류를지도하고 싶었다면, 객체 사용

var colors = { 
    1: "red", 
    "two": "green", 
    "sandwich": "blue" 
} 
.... 
+0

+1 도랑 스위치 방식. –

0

코드에서이 줄을 추가하기 document.body.style.backgroundColor = color;​

SEE DEMO

관련 문제