게시판 제목 클릭시왼쪽 메뉴가 사라짐

게시판 제목 클릭시왼쪽 메뉴가 사라짐

QA

게시판 제목 클릭시왼쪽 메뉴가 사라짐

본문

3차 왼쪽 메뉴 구현은 되는데 게시판 글내용을 보기위해 게시판 제목을 클릭하면 ㅇ힌쪽 메뉴가 사라집니다.

고수님 부탁 드립니다. (소스에 잘못된 곳이 있나요?)

참고:이소스는 left.php로 만들어 인크루드 시켰습니다


<table width=100% border=0>
<tr>
<td>
 <?php echo outlogin('theme/basic'); // 외부 로그인, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정 ?>
</td>
</tr>
<tr>
<td>
<script type="text/javascript">
function display_submenu(num) {
    document.getElementById("mysub"+num).style.display="block";
}
</script>
 <style>
 #mysubmenu  {border: 1px solid #030303; border-bottom: 1px solid #c1ccda;margin:0px 13px 13px;background:#474747;position:relative;
 -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.1);
 -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.1);
 box-shadow:0 1px 2px rgba(0,0,0,0.1)}
 #mysubmenu ul {list-style:none; margin:0; padding:0;}
 #mysubmenu li { margin: 0; list-style: none;}
 #mysubmenu li.leftmenu_b {line-height:35px; margin-top:0px; padding:3px 0px 3px 0px; border-bottom:0px solid #dddddd; text-align:left; font-size:14pt; font-weight:bold; background:#121212; }
 #mysubmenu li.leftmenu_b a{ color:#fff; }
 #mysubmenu li.leftmenu_s {line-height:33px; margin-bottom:0px; padding-left:20px; border-bottom:0px solid #747474; font-size:12pt;font-weight:bold; background:#575050; color:#333; }
 #mysubmenu li.leftmenu_s:hover { background:#575050; }
 #mysubmenu li.leftmenu_s_on {line-height:33px; margin-bottom:0px; padding-left:20px; border-bottom:0px solid #747474; font-size:12pt;font-weight:bold; background:#5aacca; color:#307ca0;  }
 #mysubmenu li.leftmenu_s_on a{ color:#000; }
 #mysubmenu li.leftmenu_s a:focus, #mysubmenu li.leftmenu_s a:hover { color:#999;}
 #mysubmenu li.leftmenu_c {line-height:33px; margin-bottom:0px; padding-left:20px; border-bottom:0px solid #747474; font-size:11pt;font-weight:bold; background:#575050; color:#333; }
 #mysubmenu li.leftmenu_c:hover { background:#575050; }
 #mysubmenu li.leftmenu_c_on {line-height:33px; margin-bottom:0px; padding-left:20px; border-bottom:0px solid #747474; font-size:11pt;font-weight:bold; background:#5aacca; color:#307ca0;  }
 #mysubmenu li.leftmenu_c_on a{ color:#000; }
 #mysubmenu li.leftmenu_c a:focus, #mysubmenu li.leftmenu_s a:hover { color:#999;}
 </style>
<script>
// 지우지 말아주세요. 새창 등에서도 사용합니다.
$(document).ready(function() {
    $("#mysubmenu a").on("click", function(e){ //링크 클릭시
        var $data_midtxt = $(this).attr("data-midtxt");
        if( $data_midtxt ){
            $.cookie('sub_midtxt', $data_midtxt, { path: '/' });
        } else {
            $.cookie('sub_midtxt', null, { path: '/' });
        }
    });
});
</script>
    <div id="mysubmenu">
        <?php
        $tmp_code = substr($me_code,0,2);
        $tmp_menu_name=sql_fetch(" select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '2' and me_code = '$tmp_code' ");
        ?>
            <li class="leftmenu_b"><a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>"><h3>  <font color=#fff><?=$tmp_menu_name['me_name']?></font></h3></a></il>
        <?
        $sql2 = " select *
                    from {$g5['menu_table']}
                    where me_use = '1'
                      and length(me_code) = '4'
                      and substring(me_code, 1, 2) = '$tmp_code'
                    order by me_order,me_code, me_id ";
        $result2 = sql_query($sql2);
        for ($k=0; $row2=sql_fetch_array($result2); $k++) {
            if($k == 0)
                echo '<ul class="snb_2dul">'.PHP_EOL;
        ?>
                   <li class="leftmenu_s"<?php
                    if ($row2['me_link']) {
                        $me_link0 = explode("=",$row2['me_link']);
                        if ( ($me_link0[1]==$board['bo_table'])||($me_link0[1]==$co_id) ) {
                        //if(strpos($row2['me_link'], $_GET['bo_table']) !== false) {
                            echo "style='font-size:14pt;'";
                        }
                    } else {
                        if ( ($row2['me_name']==$board['bo_subject'])||($row2['me_name']==$g5['title']) ) {
                        //if ( strpos($row2['me_link'], $_GET['bo_table']) !== false ) {
                            echo " style='font-size:14pt;'";
                        }
                    }
                    ?>>
                <a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="snb_2da <?php if($row2['me_code']==substr($me_code,0,4)) { echo "on"; }?>">* <?php echo $row2['me_name'] ?></a>
        <?php
            //3차메뉴 불러 오기.
            $sql3 = " select *
                        from {$g5['menu_table']}
                        where me_use = '1'
                          and length(me_code) = '6'
                          and substring(me_code, 1, 4) = '{$row2['me_code']}'
                        order by me_order,me_code, me_id ";
            $result3 = sql_query($sql3);
            $num3 = sql_num_rows($result3);
            if($num3>0){
                echo '<ul class="snb_3dul">'.PHP_EOL;
                while($row3=sql_fetch_array($result3)){
        ?>
                           <li class="leftmenu_c"<?php
                    if ($row3['me_link']) {
                        $me_link0 = explode("=",$row3['me_link']);
                        if ( ($me_link0[1]==$board['bo_table'])||($me_link0[1]==$co_id) ) {
                        //if(strpos($row3['me_link'], $_GET['bo_table']) !== false) {
                            echo "style='font-size:14pt;'";
                        }
                    } else {
                        if ( ($row3['me_name']==$board['bo_subject'])||($row2['me_name']==$g5['title']) ) {
                        //if ( strpos($row3['me_link'], $_GET['bo_table']) !== false ) {
                            echo " style='font-size:14pt;'";
                        }
                    }
                    ?>>
                        <a href="<?php echo $row3['me_link']; ?>" target="_<?php echo $row3['me_target']; ?>" class="snb_3da <?php if($row3['me_code']==$me_code) { echo "on3"; }?>">  <font>ㄴ<?php echo $row3['me_name'] ?></font></a>
                    </li>
        <?php
                }
                echo '</ul>'.PHP_EOL;
            }
            echo '</li>'.PHP_EOL;                    
        }
        if($k > 0)
            echo '</ul>'.PHP_EOL;
        ?>
</div>
</td>
</tr>
</table>

이 질문에 댓글 쓰기 :

답변 2

  <?php
        $tmp_code = substr($me_code,0,2);

이 변수가 어디서 오는 건가요?

다음과 같이 시도해 볼 수 있을 것 같습니다.

 


$("#mysubmenu a").on("click", function(e){
    var $data_midtxt = $(this).attr("data-midtxt");
    if( $data_midtxt ){
        $.cookie('sub_midtxt', $data_midtxt, { path: '/' });
    } else {
        $.cookie('sub_midtxt', null, { path: '/' });
    }
    // 이 부분을 주석 처리하면 왼쪽 메뉴가 사라지지 않음
    // e.preventDefault();
});

 

주의해야 할 점은 이 변경이 다른 부분에 영향을 미칠 수 있으므로, 수정 후 웹 사이트의 다른 부분도 테스트하여 모든 기능이 올바르게 작동하는지 확인하는 것이 중요할 것으로 생각합니다.

 

$.cookie() 함수는 jQuery Cookie 플러그인이 필요하므로, 해당 플러그인이 포함되어 있는지 확인해보시고, 필요한 경우 jQuery Cookie 플러그인을 추가하셔야 합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 53
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT