A

prototype.js 를 이용한 트리형식의 카테고리메뉴

· 17년 전 · 2276
도움이 될까 해서 올립니다.

이미지파일은 폴더형태의 열림/닫힘 을 구하셔서
열림(folderopen.gif),  닫힘(fiolder.gif) 으로 이름을 바꾸시고
_Images 디렉토리 안에 넣어두시면 바로 적용됩니다.

기본적으로 prototype.js 를 사용했으니 다운을 받으세요. 구하기 쉽습니다.

http://www.prototypejs.org/ 에서 받으시고 prototype.js 로 이름을 리네임하세요.

자바스크립트의 객체지향적 개발방법에 대한 기초적인 부분이고요
디비 연동 및 XML 연동 부분은 뭐 기회가 있다면 또 올려드리겠습니다...

초보분들 참고하세요...


<!-- category.html  부분 -->

<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" src="CateGory.js"></script>

<div id="menu1" onClick="CateGory.SwitchCateGory('sub1', this)" style="cursor:pointer">
<img id="folder_menu1" align="absmiddle" src="_Images/folder.gif">아침식사</div>
     <span class="submenu" id="sub1" style="display:none;padding-left:10px">
            
        <div id="menu1-1" onClick="CateGory.SwitchCateGory('sub1-1', this)" style="cursor:pointer">
        <img id="folder_menu1-1" align="absmiddle" src="_Images/folder.gif">중간점검</div>
            <span class="submenu" id="sub1-1" style="display:none;padding-left:15px">
                <a href="#" onclick="CateGory.ClickMenu('컵라면')">컵라면</a><br>
                빵과 우유<br>
                삼겹살
            </span>
        박카스<br>
        십전대보탕<br>
        원숭이골탕
        </span>

<div id="menu2" onClick="CateGory.SwitchCateGory('sub2', this)" style="cursor:pointer">
<img id="folder_menu2" align="absmiddle" src="_Images/folder.gif">점심식사</div>
      <span class="submenu" id="sub2" style="display:none;padding-left:10px">
        콩나물 해장국<br>
        개구리 앞다리<br>
        바퀴벌레 수염튀김
        </span>

<div id="menu3" onClick="CateGory.SwitchCateGory('sub3', this)" style="cursor:pointer">
<img id="folder_menu3" align="absmiddle" src="_Images/folder.gif">저녁식사</div>
      <span class="submenu" id="sub3" style="display:none;padding-left:10px">
        물회<br>
        개구리 뒷다리<br>
        돼지 혀바닥 튀김
        </span>        



<!-- CateGory.js 부분 -->


var CateGory =
{

    UDIR         : '',    // 경로


    // 구성된 트리메뉴에서 클릭시 메뉴전환처리
       
    SwitchCateGory : function ( OBJ, F )
    {

        if ( document.getElementById )
        {
            var EL      = $(OBJ);                            // 현재 클릭한 메뉴의 객체
            var CHEL = EL.getElementsByTagName("span");    // 하위메뉴의 엘리먼트
                
            var HID  = $(F.id);                        // 현재 엘리먼트

            var divNimg = 'folder_' + HID.id;            // IMG 아이디를 생성시킴
            var ImgSrc     = $(divNimg).src;
                
            var imgClose = "folder.gif";                // 닫힘 아이콘
            var imgOpen  = "folderopen.gif";            // 열림 아이콘

            var    imgName     = imgOpen;                        // 기본은 닫힘

            var ImgFileName = ( imgName == 'folder.gif' ) ?  imgOpen : imgClose;    // 상황에 따라 열림/닫힘                    
            var imgPath  = "<img id='"+divNimg+"' align='absmiddle' src='"+this.UDIR+"/_Images/"+ImgFileName+"'>";                    

                
            if ( EL.style.display != "block" )    { EL.style.display = "block"; }
            else                                { EL.style.display = "none"; }

        }

    }
        
}        


더 좋은 방법이나 좋은프로그램 있으면 올려주세요.. 저도 참고 좀 하게~~^^
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
17년 전 조회 1,703
17년 전 조회 2,770
17년 전 조회 1,734
17년 전 조회 1,328
17년 전 조회 1,475
17년 전 조회 3,360
17년 전 조회 2,402
17년 전 조회 2,195
17년 전 조회 1,446
17년 전 조회 2,667
17년 전 조회 1,407
17년 전 조회 1,358
17년 전 조회 1,615
17년 전 조회 2,980
17년 전 조회 2,639
17년 전 조회 2,696
17년 전 조회 1,420
17년 전 조회 1,536
17년 전 조회 3,490
17년 전 조회 3,069
17년 전 조회 4,329
17년 전 조회 2,505
17년 전 조회 2,593
17년 전 조회 1,649
17년 전 조회 2,759
17년 전 조회 2,444
17년 전 조회 3,214
17년 전 조회 2,710
17년 전 조회 1,864
17년 전 조회 2,648
17년 전 조회 1,799
17년 전 조회 1,389
17년 전 조회 2,456
17년 전 조회 3,092
17년 전 조회 4,294
17년 전 조회 3,369
17년 전 조회 1,629
17년 전 조회 1,863
17년 전 조회 2,461
17년 전 조회 1,768
17년 전 조회 1,943
17년 전 조회 2,912
17년 전 조회 2,355
17년 전 조회 2,000
17년 전 조회 4,402
17년 전 조회 3,247
17년 전 조회 1,637
17년 전 조회 3,768
17년 전 조회 3,007
17년 전 조회 2,277
17년 전 조회 1,504
17년 전 조회 2,538
17년 전 조회 2,270
17년 전 조회 2,188
17년 전 조회 2,128
17년 전 조회 1,384
17년 전 조회 2,090
17년 전 조회 3,117
17년 전 조회 1,637
17년 전 조회 1,878
17년 전 조회 1,548
17년 전 조회 1,801
17년 전 조회 1,770
17년 전 조회 1,679
17년 전 조회 2,755
17년 전 조회 2,539
17년 전 조회 2,321
17년 전 조회 1,612
17년 전 조회 2,632
17년 전 조회 4,459
17년 전 조회 2,952
17년 전 조회 1,860
17년 전 조회 2,047
17년 전 조회 3,454
17년 전 조회 2,438
17년 전 조회 4,021
17년 전 조회 1,873
17년 전 조회 2,480
17년 전 조회 2,316
17년 전 조회 1,815
17년 전 조회 2,337
17년 전 조회 2,136
17년 전 조회 2,166
17년 전 조회 3,293
17년 전 조회 2,356
17년 전 조회 1,642
17년 전 조회 1,664
17년 전 조회 2,321
17년 전 조회 3,409
17년 전 조회 2,341
17년 전 조회 1,739
17년 전 조회 4,435
17년 전 조회 2,236
17년 전 조회 3,671
17년 전 조회 6,235
17년 전 조회 1,689
17년 전 조회 1,839
17년 전 조회 1,432
17년 전 조회 1,529
17년 전 조회 3,080