k

롤오버시 서브메뉴가 나타나는 기본 스크립트

· 2013-02-13 (수) 09:48:53 · 8883 · 3

안녕하세용.~~
필요하신분이 계실지 잘 모르겠지만,
제가 일반 소규모 홈페이지를 만들때 그냥 끼워넣어서 쓰는 소스입니다.

<style>
#menu {display:inline-block;width:700px;/* 메뉴의 너비 */}
#menu li {display:inline-block;width:25%;/* 1차메뉴 개수에 따라 %조절 */height:33px;/* 1차 메뉴바 높이 */float:left;text-align:center;}
#menu li ul {display:none;position:absolute;width:400px;margin-top:26px;/* 2차메뉴의 위치 - 1차메뉴 맨위에서 부터의 거리 */}
#menu li ul li {display:inline-block;width:auto;height:28px;/* 2차메뉴의 높이 */padding:0;text-align:center;}
#menu img {border:0px none;}
#menu .side {padding:0;}
#menu .submenu {padding:5px 8px 0 8px;background:url(서브메뉴 배경) x-repeat;}

/* -------------------------------------------
각 서브메뉴의 위치
기준 : 1차 메뉴의 맨 앞에서 부터의 거리로 계산
------------------------------------------- */
#menu .submenu1 {margin-left:-100px;}
#menu .submenu2 {margin-left:-100px;}
#menu .submenu3 {margin-left:-100px;}
#menu .submenu4 {margin-left:-100px}
</style>
<script language="javascript">
/* 만약 오픈 되어 있어야 하는 서브메뉴가 있을때 사용 */
//var old_menuid = 메뉴번호;
var old_viewid = 0;
function menu_view(viewid){
 if(viewid!=old_viewid){
  document.getElementById("submenu"+viewid).style.display="block";
  if(old_viewid!="0")document.getElementById("submenu"+old_viewid).style.display="none";
  old_viewid = viewid;
 }
}

function menu_hide(hideid){
 document.getElementById("submenu"+hideid).style.display="none";
 old_viewid = 0;
}
</script>

<div id="menu">
    <ul>
        <li onmouseover="javascript:menu_view(1);" onmouseout="javascript:menu_hide(1);">
            <a href="#"><img src="./common/menu_01.png" alt="1번메뉴"></a>
            <ul id="submenu1" class="submenu1" onmouseover="javascript:menu_view(2);" onmouseout="javascript:menu_hide(1);">
                <li class="submenu"><a href="#">1-1메뉴</a></li>
                <li class="submenu"><a href="#">1-2메뉴</a></li>
                <li class="submenu"><a href="#">1-3메뉴</a></li>
                <li class="submenu"><a href="#">1-4메뉴</a></li>
            </ul>
        </li>
       
        <li onmouseover="javascript:menu_view(2);" onmouseout="javascript:menu_hide(2);">
            <a href="#"><img src="./common/menu_02.png" alt="2번메뉴"></a>
            <ul id="submenu2" class="submenu2" onmouseout="javascript:menu_hide(2);">
                <li class="submenu"><a href="#">2-1메뉴</a></li>
                <li class="submenu"><a href="#">2-2메뉴</a></li>
                <li class="submenu"><a href="#">2-3메뉴</a></li>
                <li class="submenu"><a href="#">2-4메뉴</a></li>
            </ul>
        </li>
       
        <li onmouseover="javascript:menu_view(3);" onmouseout="javascript:menu_hide(3);">
            <a href="#"><img src="./common/menu_03.png" alt="3번메뉴"></a>
            <ul id="submenu3" class="submenu3" onmouseout="javascript:menu_hide(3);">
                <li class="submenu"><a href="#">3-1메뉴</a></li>
                <li class="submenu"><a href="#">3-2메뉴</a></li>
                <li class="submenu"><a href="#">3-3메뉴</a></li>
                <li class="submenu"><a href="#">3-4메뉴</a></li>
            </ul>
        </li>
       
        <li onmouseover="javascript:menu_view(4);" onmouseout="javascript:menu_hide(4);">
            <a href="#"><img src="./common/menu__04.png" alt="4번메뉴"></a>
            <ul id="submenu4" class="submenu4" onmouseout="javascript:menu_hide(4);">
                <li class="submenu"><a href="#">4-1메뉴</a></li>
                <li class="submenu"><a href="#">4-2메뉴</a></li>
                <li class="submenu"><a href="#">4-3메뉴</a></li>
                <li class="submenu"><a href="#">4-4메뉴</a></li>
            </ul>
        </li>
    </ul>
</div>

|

댓글 3개

필요할때 무지 찾아 다니게 되는 소스 !!
감사드립니다.
2014-05-27 (화) 15:57:20
감사합니다. 유용하게 쓰겠습니다. 영카트에 넣었더니 하위메뉴의 글씨가 크게 나오는데 기본css를 수정해야 하는 건가요.
이미지를 넣으면 괜찮겠지요.
아마도 사이트 css의 기본 폰트사이즈를 이용하는거라
#menu li {display:inline-block;width:25%;height:33px;float:left;font-size:00px;text-align:center;}
여기에 폰트사이즈 추가하시면됩니다.
이건 완전 허접한거라 다음에 다시 올려드리도록 하겠습니다. 요즘은 jquery를 보통 많이 사용합니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
13-02-27 조회 3,995
13-02-27 조회 3,330
13-02-27 조회 6,600
13-02-27 조회 3,836
13-02-26 조회 1.2만
13-02-26 조회 3,490
13-02-26 조회 3,675
13-02-26 조회 6,047
13-02-26 조회 3,644
13-02-26 조회 4,582
13-02-26 조회 6,431
13-02-26 조회 3,943
13-02-25 조회 3,901
13-02-24 조회 8,091
13-02-24 조회 4,180
13-02-24 조회 3,421
13-02-24 조회 5,195
13-02-24 조회 5,223
13-02-24 조회 4,299
13-02-24 조회 5,620
13-02-24 조회 9,305
13-02-24 조회 4,932
13-02-22 조회 3,476
13-02-21 조회 4,612
13-02-21 조회 4,672
13-02-20 조회 5,430
13-02-19 조회 3,290
13-02-19 조회 4,401
13-02-19 조회 3,114
13-02-19 조회 4,578
13-02-18 조회 5,392
13-02-18 조회 3,520
13-02-16 조회 6,782
13-02-15 조회 1.3만
13-02-15 조회 3,976
13-02-15 조회 5,308
13-02-14 조회 4,946
13-02-14 조회 5,410
13-02-13 조회 8,884
13-02-12 조회 5,039
13-02-12 조회 5,813
13-02-12 조회 3,828
13-02-07 조회 3,444
13-02-06 조회 4,520
13-02-05 조회 8,851
13-02-05 조회 4,142
13-02-05 조회 7,542
13-02-04 조회 3,346
13-02-04 조회 7,137
13-02-04 조회 4,080
13-02-03 조회 3,934
13-02-02 조회 3,946
13-02-02 조회 4,085
13-02-01 조회 3,293
13-02-01 조회 3,265
13-02-01 조회 2.3만
13-01-31 조회 3,149
13-01-31 조회 3,942
13-01-30 조회 3,902
13-01-30 조회 4,158
13-01-30 조회 6,278
13-01-30 조회 3,397
13-01-30 조회 4,941
13-01-29 조회 7,570
13-01-28 조회 3,420
13-01-28 조회 6,686
13-01-28 조회 3,917
13-01-28 조회 6,647
13-01-28 조회 3,700
13-01-25 조회 4,595
13-01-25 조회 3,728
13-01-25 조회 5,018
13-01-25 조회 1.1만
13-01-24 조회 4,825
13-01-24 조회 4,700
13-01-24 조회 4,342
13-01-24 조회 3,287
13-01-24 조회 4,940
13-01-24 조회 4,721
13-01-23 조회 3,291
13-01-23 조회 3,952
13-01-23 조회 3,359
13-01-23 조회 3,433
13-01-23 조회 4,093
13-01-22 조회 6,601
13-01-21 조회 5,007
13-01-20 조회 5,128
13-01-20 조회 6,714
13-01-20 조회 6,450
13-01-19 조회 6,172
13-01-19 조회 7,018
13-01-18 조회 3,760
13-01-18 조회 8,816
13-01-18 조회 3,966
13-01-18 조회 3,873
13-01-18 조회 6,102
13-01-18 조회 5,779
13-01-18 조회 8,186
13-01-18 조회 5,535
13-01-18 조회 6,145