2017-09-29 12 views
0

나는 한 페이지짜리 웹 사이트를 만들려고 노력하고 있지만, 나는 천천히 아래로 스크롤 할 때처럼 부드럽게 아래로 스크롤 할 사이트가 필요합니다. 특수 헤더 또는 기능을 사용해야합니까? 덕분에 ! 내 현재 코드는 다음과 같습니다부드럽게 아래로 스크롤

<section id="section01" style="width: 100%; height: 80%"> 
    <h1>Scroll Down Button #1</h1> 
    <a href="#section02">Scroll</a> 
</section> 
<section id="section02" style="width: 100%; height: 100%"> 
    <h1>Scroll Down Button #2</h1> 
    <a href="#section01">Scroll</a> 
</section> 
+0

는'jQuery'는 귀하의 질문에 태그 당신은 어떤 연구를 했는가? 나는'jQuery'가 당신이 사용할 수있는 무언가를 가질 것이고 그것이 어떻게 작동하고 어떻게 사용하는지에 대한 상세한 설명과 함께 자신의 웹 사이트에서 데모/예제를 찾을 것입니다. – NewToJS

답변

1

jQuery animate()이에 대한 좋은한다. 아래의 코드 조각 :

// Select all links with hashes 
 
$('a[href*=#]:not([href=#])').click(function() { 
 
    // On-page links 
 
    if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') || 
 
    location.hostname == this.hostname) { 
 
    // Figure out element to scroll to 
 
    var target = $(this.hash); 
 
    target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); 
 
    // Does a scroll target exist? if so, animate 
 
    if (target.length) { 
 
     $('html,body').animate({ 
 
     scrollTop: target.offset().top 
 
     }, 1000); 
 
     //Prevent default 
 
     return false; 
 
    } 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<section id="section01" style="width: 100%; height: 80%"> 
 
    <h1>Scroll Down Button #1</h1> 
 
    <a href="#section02">Scroll</a> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! loremLorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! loremLorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! loremLorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! loremLorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! loremLorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam doloribus, quis, fugiat est odio, quas natus nam veritatis non explicabo voluptatibus? Voluptatibus accusantium dolores exercitationem provident nesciunt fuga, consequuntur vero! lorem</p> 
 
</section> 
 
<section id="section02" style="width: 100%; height: 100%"> 
 
    <h1>Scroll Down Button #2</h1> 
 
    <a href="#section01">Scroll</a> 
 
</section>

+1

소스 코드 내에서 관련 문서에 대한 링크. ** + 1 ** – NewToJS

0

작은 JQuery와있다 당신이 당신의 인 페이지 링크를 통해 원활하게 스크롤 할 수 있습니다 니펫을. 내부적으로 스크롤하는 동안 animate을 사용하고 있습니다. 나는 당신이 볼

$(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; 
 
     } 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<section id="section01" style="width: 100%; height: 80%"> 
 
    <h1>Scroll Down Button #1</h1> 
 

 
    <a href="#section02">Scroll</a> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ac ornare risus, et pretium nisi. Fusce justo lectus, pharetra eget pellentesque sed, blandit quis mi. Praesent scelerisque mollis interdum. Nunc et eleifend lacus. Nam nunc risus, hendrerit 
 
    in tempor sed, fermentum id mauris. Quisque lacus libero, auctor ac libero vitae, auctor faucibus nunc. Aliquam vitae orci non tellus rutrum varius. Praesent facilisis egestas lectus vestibulum tristique. Fusce eleifend libero nec justo pretium mollis. 
 
    Duis eu finibus erat, eget ornare velit. Sed mattis interdum elit eu auctor. Vestibulum sagittis malesuada arcu elementum maximus. Mauris tristique, leo varius rhoncus consectetur, arcu diam faucibus nisl, lobortis dapibus diam elit at orci. In fermentum 
 
    est odio, ut accumsan est aliquam at. Nunc rutrum mi et sem sagittis lobortis. Nulla ac velit at libero ultrices placerat vitae eu mi. Nullam nec pharetra elit. Pellentesque magna metus, lacinia vitae sapien at, tempor tempus erat. In pulvinar elit 
 
    eu justo suscipit, ac vestibulum lorem scelerisque. Aliquam laoreet at augue at faucibus. Proin libero urna, pellentesque ac varius nec, vulputate sollicitudin ipsum. Maecenas et nibh a orci porttitor faucibus id quis tortor. Donec faucibus leo tellus, 
 
    eget lacinia justo hendrerit in. Etiam egestas orci ut nulla fringilla vulputate. Donec id nunc ut lacus ornare dapibus. Integer rhoncus arcu ac maximus rutrum. Duis sed dui sed mauris accumsan ultricies. Aliquam hendrerit lorem ac mauris tristique 
 
    tincidunt. Phasellus pulvinar nibh a augue pellentesque, in interdum elit ultricies. Donec aliquet elit a aliquam eleifend. Suspendisse a sodales neque, sed tempor mi. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis 
 
    egestas. Aliquam et porta neque, quis vulputate quam. Phasellus placerat accumsan diam, sit amet mollis quam rhoncus sit amet. Donec vel dui leo. Ut feugiat enim metus, sit amet ullamcorper quam feugiat ut. Aliquam euismod mauris porttitor turpis 
 
    commodo, at pharetra odio imperdiet. Vivamus cursus semper lobortis. Cras non ipsum luctus ligula venenatis feugiat egestas vitae metus. Morbi dignissim hendrerit maximus. Maecenas diam eros, pharetra ut tristique quis, vulputate nec lectus. Curabitur 
 
    euismod aliquet nulla, et eleifend est semper ac. Pellentesque hendrerit mollis lectus, sed condimentum quam tempus non. Mauris efficitur arcu a nisl consequat scelerisque. Nulla facilisi. Proin bibendum placerat finibus. Integer gravida magna vitae 
 
    tincidunt facilisis. Donec ac lorem metus. Sed eros diam, blandit sed malesuada vel, aliquam at velit. Ut risus quam, maximus id quam ut, dictum posuere est. Nunc vitae suscipit neque. Sed elit urna, sodales eget nisi porta, convallis ullamcorper 
 
    nibh. Praesent maximus, elit id ullamcorper posuere, felis leo bibendum nibh, eget placerat neque tellus nec erat. Sed porttitor augue nec ex mattis tincidunt. Nunc consectetur imperdiet ligula eu dapibus. Morbi gravida lacus ut lobortis vulputate. 
 
    Aliquam ut interdum turpis. Vestibulum sit amet augue gravida tortor ultrices commodo. Aliquam mauris nisi, egestas vitae leo tincidunt, tempor efficitur risus. Donec tortor lorem, congue in nunc vitae, lacinia fringilla mi. Pellentesque finibus nibh 
 
    vitae facilisis suscipit. Duis lobortis mollis purus vel vehicula. Etiam tristique mi mi, ut luctus tellus semper sed. Duis aliquam nibh nec dapibus facilisis. Morbi ultricies faucibus quam, facilisis tincidunt mi consectetur quis. Proin pharetra 
 
    risus maximus eros imperdiet posuere. Donec pharetra lorem at dui tempor, vitae tempor diam aliquet.</p> 
 
</section> 
 
<section id="section02" style="width: 100%; height: 100%"> 
 
    <h1>Scroll Down Button #2</h1> 
 
    <a href="#section01">Scroll</a> 
 
</section>