그누보드 메뉴 생성 후 메뉴 클릭시 색상 넣기 질문입니다.
본문
안녕하세요. ^^
그누보드 메뉴 생성 한 후에요..
클릭한 메뉴에 색상을 넣고 싶어서 헤딩중인데 잘 안되네요 ㅠㅠ
<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');
}
});
답변을 작성하시기 전에 로그인 해주세요.