묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
분기별(계절별) 메뉴 다르게 보이게 할수 있나요?
2004.03.17 00:41
계절별 혹 분기별로 메뉴를 다르게 보이게 할수 있는 방법이 없나요?
if문이나 switch문을 이용한 계절별 메뉴 다르게 보이게 할수 있는 방법 좀 알려주세요..
if문이나 switch문을 이용한 계절별 메뉴 다르게 보이게 할수 있는 방법 좀 알려주세요..
리플이 없기에...더 멋지게 짜서 밑에 달아주세요~^^;;
그럼 시작합니다.-_-;
function diff_menu(){
var month, obj; //변수 선언입지요..;;
obj=new Date(); //날짜를 받습니다.;
month=obj.getMonth(); //날짜에서 달을 추출하구요..;;
month++; //1증가 시킵니다.안시켜도 무방하지만..예를 들어 3월이라면 2가 반환되는데 그게 헷갈려서 1증가 시키는 겁니다...;;
month=parseInt(month); //숫자로 바꿔주고..;;
if(month>2 && month<6){ //제기준의봄입니다.
hidelayer(); //모든 레이어를 감추는 함수.
layer1.style.display='block'; // 다시 보이게 합 니다;;
}else if(month>5 && month<10){
hidelayer(); //아래에 있습니다.
layer2.style.display='block'; //모두 감추고나 서 해당된녀석만 보이게 하는 겁니다.;;
}else if(month>9 && month<12){
hidelayer();
layer3.style.display='block';
}else{
hidelayer();
layer4.style.display='block';
}
}
function hidelayer(){ //반복문으로 돌려서 모든 레이어를 안보이게 함;
for(i=1; i<5;i++){
dc=eval('layer'+i);
dc.style.display='none';
}
}
일단 레이어가 네개 있구요, 다 같은 위치에 있습니다. 문서가 로딩될때 실행할려면
<body onLoad="diff_menu()">라고 해주시면 되겠지요?
문서가 로딩되면서 함수를 실행하고 달 수를 받아 옵니다. 그 수를 가지고 if문을 실행합니다.
지금보니 코드가 확실히 엉성하군요. hidelayer()함수가 저기 잇을 필요가없지요..if문 밖에 한번만 있으면 됩니다..고치려니 귀찮아서요...^^;;;;;아무튼..diff_menu함수 에서 hidelayer함수를
실행시켜서 일단 모든 레이어를 안보이게 한 후에 달의 숫자에 따른 레이어만 다시 보이게 하는
겁니다. 레이어 이름은 layer1, layer2, layer3, layer4 이구요^^;;. 제실력으론 이거밖에..다시봐도 조금 엉성합니다..아랫분 도와주세요~~~^^;;;
암튼..조금이라도 도움이 되시길...^^