여러분. 나는 당신이 나를 도울 수 있기를 바라고, 버튼을 클릭하여 javascript를 통해 내 문서의 본문 부분의 색을 변경하려고합니다.Javascript가 html 배경색을 지속적으로 변경하지 않습니다.
세 개의 버튼이 있으며 각각 배경색을 설정합니다. 문제는 :
<html>
<head>
<script type="text/javascript">
function colorish(my_color){
if (my_color === 'gray'){
document.body.style.background = '#CCCCCC';
}else if (my_color === 'orange'){
document.body.style.background = '#FF9900';
}else if (my_color === 'blue'){
document.body.style.background = '#C1DAD6';
} else {
alert('on else');
}
}
</script>
</head>
<body style="background: orange;">
<form>
<button name="back_color" onclick="colorish('gray')">Gy</button>
<button name="back_color" onclick="colorish('orange')">Oe</button>
<button name="back_color" onclick="colorish('blue')">Be</button>
</form>
</body>
</html>
스크립트가에 : 나는 '그들 중 하나를 클릭하면 여기 내 코드의 샘플입니다, 다음은 원래 설정 색상에 반환, 잠깐의 배경 색상을 변경 내 환경에서 별도의 파일을 사용하지만 정확히 동일합니다.
스크립트에 나는 포함하는 경우 :.
onload = selector();
function selector(){
var buttons = document.getElementsByName('back_color');
buttons[0].onclick = colorish('gray');
buttons[1].onclick = colorish('orange');
buttons[2].onclick = colorish('blue');
}
그것은 단지이 경우에는 파란색되고, 마지막 과제로 설정 배경에 ... 할당 모든 버튼 []을 입력하고 떠난다.
저는 전문가가 아니기 때문에 js와 함께 html에 대해 놓친 내용이있을 수 있습니다.
팁 jquery를 사용하면 더 쉽게 삶을 살 수 있습니다. - www.jsfiddle.net –
버튼을 클릭하면 페이지가 다시로드됩니까? – David
예. 코드를 실행하면 페이지가 다시로드됩니다. –