Copy
<script>
$(document).ready(function() {
$('ul li').click(function(){
$('li').removeClass("active");
$(this).addClass("active");
});
});
</script>
<div class="realside_menu">
<ul>
<li><a href="https://도메인/realqna">실시간문의</a></li>
<li><a href="https://도메인/realqna/area/충남">문의 이용방법</a></li>
</ul>
</div>
메뉴를 클릭하면 li에 active가 활성화됐다가 유지가 안되고 사라집니다;;
유지할라면 어떻게해야하나요?
url을 가지고와서 뭐 어떻게 한다고 하던데.. 잘안됩니다ㅠ 도와주세요
답변 3개 / 댓글 3개
채택된 답변
+20 포인트
4년 전
페이지가 이동되면 스크립트로 addclass 는 당연히 사라집니다.
사이트 구성이 어찌되어있는지 모르겠지만 보통 php 를 이용한다면
아래처럼 url 에서 일부문자열이 포함되지를 얻어서 직접 클래스를 대입해줍니다.
Copy
/*
$_SERVER['REQUEST_URI'] 에는 현재 페이지 URL 이 풀로 들어가있습니다. 파라메터까지
즉 현재페이지가 어떤건지 알수있는지 url 일부분을 대입해주시면 됩니다.
*/
<ul>
<li class='<?php if(strpos($_SERVER['REQUEST_URI'],'abcd.php?test=1')!==false) echo "active"?>'>메뉴1</li>
<li class='<?php if(strpos($_SERVER['REQUEST_URI'],'abcd.php?test=2')!==false) echo "active"?>'>메뉴2</li>
</ul>
답변에 대한 댓글 2개
4년 전
혹시 한가지 궁금한것이 스크립트로 이 기능을 구현했을때와 님께서 말씀해주신 방법으로 구현했을때 차이점은 어떤것이 있을까요?
홈페이지 페이지 속도나 SEO 측면에서 차이가 없는지요..
홈페이지 페이지 속도나 SEO 측면에서 차이가 없는지요..
2년 전
도움이 되었습니다 감사합니다
4년 전
페이지 이동시에는 리액트나 뷰같은 SPA를 활용하시는게 아니면 php나 java 등 서버사이드 언어쪽에서 작업하셔야 합니다.
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.