그누보드 메뉴 생성 후 메뉴 클릭시 색상 넣기 질문입니다.

그누보드 메뉴 생성 후 메뉴 클릭시 색상 넣기 질문입니다.

QA

그누보드 메뉴 생성 후 메뉴 클릭시 색상 넣기 질문입니다.

답변 1

본문

안녕하세요. ^^

 

그누보드 메뉴 생성 한 후에요..

 

클릭한 메뉴에 색상을 넣고 싶어서 헤딩중인데 잘 안되네요 ㅠㅠ

 


 <li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
     <a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>"                    class="gnb_1da">
         <span><?php echo $row['me_name'] ?></span>
    </a>
.... 생략

 

이렇게 "<?php echo $row['me_name'] ?>" 앞에 span 으로 감싼후

 

클릭시 class 추가를 위해, 스크립트를 검색해서 만들어봤는데요.

 


<script type="text/javascript">
$(function() {
   $('span').click(function() {
      $(this).addClass('menu_on')
    })
 })
</script>

 

menu_on 은 css 에서 red 색상을 넣어놨습니다.

클릭시 red 색상이 보였다가 다시 빠져버리네요 ㅠㅠ

클릭후 class 가 계속 유지되게끔 하는 코드가 필요한듯한데..

코딩만 주로 하는 코더입니다 ㅠㅠ

조언 주실 분 계실까요? ^^

 

제 글 읽어주셔서 감사합니다.

이 질문에 댓글 쓰기 :

답변 1

<a href="page1.php">메뉴1</a>

<a href="page2.php">메뉴2</a>

메뉴1 클릭시 page1.php, 메뉴2 클릭시 page2.php 로 이동됩니다.

 

그래서 원했던 바를 구현하려면, 클릭시 이벤트에 주는 것이 아닌,

이동된 페이지에서, 해당 페이지의 url 과 메뉴의 링크주소(href)가 같은 것을 찾아 

처리하는 것이 맞지 않을까 합니다.

 

샘플 코드입니다.


current_page_link = document.location.href;
$(".gnb_1dli a").each(function(){
    var _href = $(this).attr("href");
    
    if (_href == current_page_link || _href.indexOf(current_page_link) > -1 ) {     
        $(this).addClass('menu_on');
    }
});

답변 감사합니다.
어떤 말씀인지 이해는 되네요~ 매칭시켜서 처리하는게 맞는게 답인듯한데,
샘플코드로 응용해보았지만 안되네요 ㅠㅠ

코딩만 하던지라 참 어렵네요 ㅠㅠ
다시 한번 답변주셔서 감사합니다 ^^

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 21
© SIRSOFT
현재 페이지 제일 처음으로