[jQuery] 동일 페이지 내에서 부드럽게 스크롤시키기

Last Updated: 2023년 07월 17일 | | 댓글 남기기

동일 페이지 내에서 링크를 클릭했을 때 부드럽게 스크롤되도록 하려면 다음 jQuery 스크립트를 사용할 수 있습니다.

$(function() {
$('a[href*="#"]:not([href="#"])').click(function() {
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
if (target.length) {
$('html, body').animate({
scrollTop: target.offset().top
}, 1000);
return false;
}
}
});
});
// Source: css-tricks

여기에서 데모를 볼 수 있습니다.

또는 w3schools에서 제공하는 스크립트를 사용할 수도 있습니다. 자세한 스크립트와 데모는 이 글을 참고해보시기 바랍니다.


워드프레스에서 jQuery 스크립트를 적용하려면 Enqueue를 시켜주는 과정이 필요합니다(참고).

워드프레스 테마에서 부드럽게 스크롤(Smooth Page Scrolling)하는 기능을 제공하는 경우도 있습니다. 예를 들어, 다목적 워드프레스 테마 중 하나인 Bridge에서 원페이지(One-page)로 구성할 경우 부드럽게 스크롤되는 기능을 이용할 수 있습니다(참고). X 테마데모 페이지에서도 이와 같은 스크롤 기능을 확인할 수 있습니다.

테마에서 부드럽게 스크롤 기능을 지원하지 않는 경우 위의 스크립트를 복사하여 js 파일로 저장한 다음, 함수 파일에 js 파일을 후크(Enqueue)시키면 동일한 효과를 얻을 수 있습니다. (참고: 워드프레스에서는 $jQuery로 바꾸어야 제대로 작동합니다.)


댓글 남기기

Leave a Comment

할인 소식
Divi 레이아웃 AI 출시 기념 할인!
AI로 이미지, 텍스트, 코딩, 전체 페이지 레이아웃 생성 가능
베스트셀링 워드프레스 테마 Divi
0
0
시간
0
0
Limited Time Offer
You This Coupon Code in Checkout
Click the code to Copy