채택완료

서브페이지에 출력한 서브메뉴에 class 붙이기

2023-12-07 (목) 11:15:48 2,321

안녕하세요!

전에 있던 서브 네비게이션을 변형시키고 있는데 현재 들어간 페이지에 class를 주고 싶어요!

몇 가지 구문을 추가하면 될 것 같기도 하고.. 초보퍼블리셔라 php구문을 아직 모르겠어서 질문드립니다.

오늘도 좋은 하루 보내세요!

서브네비게이션 파일 공유드립니다.

Copy
<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

 

$MENUM = array();

$where = '';

if(G5_IS_MOBILE) $where = ' where me_mobile_use=1 ';

else $where = ' where me_use=1 ';

 

$sql = "select *, CHAR_LENGTH(me_code) cl from {$g5['menu_table']} {$where} order by cl asc, me_order asc, me_code asc";

$res = sql_query($sql);

while($row = sql_fetch_array($res)) {

    if($row['cl'] == 2) {

        $k1 = $row['me_code'];

        $MENUM[$k1] = $row;

        $dp1++;

        $dp2 = 0;

    }

    else if($row['cl'] == 4) {

        $k1 = substr($row['me_code'],0,2);

        $k2 = $row['me_code'];

        $MENUM[$k1]['ms'][$k2] = $row;

        $dp2++;

        $dp3 = 0;

    }

}

?>

현재 서브 네비게이션 php 파일입니다.

Copy
<div class="sub-navi-top">

        <div class="sub-navi-wrap">

 

           

            <?php $lm = substr($LMSM,0,2); ?>

            <?php if(is_array($MENUM[$lm]['ms']) && count($MENUM[$lm]['ms']) > 0) { ?>

            <ul>

                <li class="home"><a href="/">홈</a></li>

                <?php foreach ($MENUM[$lm]['ms'] as $k=>$menu) { ?>

                <li><a href="<?=$menu['me_link']?>" >

                    <?=$menu['me_name']?>

                    </a>

                    <?php } ?>

                </li>

            </ul>

            <?php } ?>

   

        </div>

    </div>

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
$(function () {
    const url = window.location.pathname,
        urlRegExp = new RegExp(url.replace(/\/$/, '') + "$");
    $('.sub-navi-wrap ul li a').each(function () {
        if (urlRegExp.test(this.href.replace(/\/$/, '')) && url != "/")  {
            $(this).addClass('active');
        }
    });
});

이걸 적용해보세요.

답변에 대한 댓글 1개

2023-12-07 (목) 13:12:20
스크립트 적용방식이 있었네요! 정말 감사합니다 :) 좋은 하루 보내세요!

답변을 작성하려면 로그인이 필요합니다.