2017-11-15 6 views
0

요즘 저는 컨설팅을 위해 웹 사이트를 만들고 있습니다. 그런데 부트 스트랩을 사용하고 있습니다. 웹 사이트에는 페이지가 한 개만 포함되어 있으며 좀더 실용적인 방법으로 고정 된 네비게이션 막대에 일부 버튼을 넣었습니다. 맨 위와 그 목표는 버튼을 클릭 할 때, 주제 스크롤을하는 페이지이지만, 두 번 클릭하면 버그가있는 것처럼 보입니다. 특정 주제에있을 때 문제가 있습니다. 다른 버튼을 클릭하여 변경하려면 페이지 스크롤이 잘못되어 몇 픽셀 높게 (?????). 나는 정말로 무슨 일이 일어나고 있는지 모르겠다. 그리고 나는 모든 js를 고치려고 노력했고 아무 것도 나를 도왔다. 여기 jQuery 부드러운 스크롤링 버그 더블 클릭 및 기타

내 코드입니다 :

$(document).ready(function() { 
 
    setBindings(); 
 
}); 
 

 
function setBindings() { 
 
    $("nav a").click(function(e) { 
 
    //e.preventDefault(); 
 
    e.preventDefault(); 
 
    var sectionID = "conteudo-" + e.currentTarget.id; 
 
    $("html body").animate({ 
 
     scrollTop: $("#" + sectionID).offset().top 
 
    }, 1000) 
 
    }) 
 
}
html, 
 
body, 
 
.capa { 
 
    height: 100%; 
 
    overflow: auto; 
 
    width: 100%; 
 
} 
 

 
body { 
 
    background-attachment: fixed; 
 
    font-family: Helvetica, Arial, sans-serif; 
 
    overflow-x: hidden; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 

 
<nav class="navbar navbar-fixed-top navbar-inverse navbar-transparente "> 
 
    <div class="container"> 
 

 
    <!-- header --> 
 
    <div class="navbar-header"> 
 

 
     <!-- botao toggle --> 
 
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#barra-navegacao"> 
 
      <span class="sr-only">alternar navegação</span> 
 
      <span class="icon-bar"></span> 
 
      <span class="icon-bar"></span> 
 
      <span class="icon-bar"></span> 
 
      </button> 
 

 
     <a href="#conteudo-sobre" class="js-scroll-trigger"> 
 
     <img src="logopng.png" width="100" height="30" style="margin-top: 10px"> 
 
     </a> 
 
     
 
    </div> 
 

 
    <!-- navbar --> 
 
    <div class="collapse navbar-collapse" id="barra-navegacao"> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
     <li><a id="home" href="#conteudo-home">Home</a></li> 
 
     <li><a id="sobre" href="#conteudo-sobre">Sobre</a></li> 
 
     <li><a id="servicos" href="#conteudo-servicos">Serviços</a></li> 
 
     <li><a id="contato" href="#conteudo-contato">Contato</a></li> 
 
     <li class="divisor" role="separator"></li> 
 
     <li><a id="msc" href="#conteudo-contato">Mande seu currículo</a></li> 
 
     </ul> 
 
    </div> 
 
    </div> 
 
    <!-- /container --> 
 
</nav> 
 
<!-- /nav --> 
 

 
<div class="capa " id="conteudo-home"> 
 
    <div class="texto-capa layer"> 
 
    <img src="logopng.png" width="450" height="150"> 
 
    <h4> 
 
     <hr align="center" width="100" size="1">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pha</h4> 
 
    <a href="#conteudo-sobre" class="btn btn-custom btn-branco btn-lg">Saiba mais</a> 
 
    </div> 
 
</div> 
 

 

 
<section id="conteudo-sobre"> 
 
    <div class="container"> 
 

 
    <div class="row text-center"> 
 
    <div style="border:1px solid red"> 
 
     <h2>Sobre nós<hr align="center" width="70%" size="1"></h2> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 

 

 
    </div> 
 

 
     
 
    </div> 
 

 

 
</section> 
 

 
<section id="conteudo-servicos"> 
 
    <div class="container"> 
 

 
    <div class="row text-center"> 
 
    <div style="border:1px solid red"> 
 
     <h2>Serviços<hr align="center" width="70%" size="1"></h2> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 

 

 
    </div> 
 

 
     
 
    </div> 
 

 

 
</section> 
 

 
<section id="conteudo-contato" > 
 
<div class="container"> 
 

 
    <div class="row text-center"> 
 
    <div style="border:1px solid red"> 
 
     <h2>Serviços<hr align="center" width="70%" size="1"></h2> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 
     <h3>Lorem ipsum </h3> 
 
     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vitae pharetra mi. Quisque sit amet mattis justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed nibh felis, ultricies vitae nisi in, euismod accumsan diam. Proin congue tempor pharetra. Vestibulum gravida sed velit non efficitur. Vivamus blandit, neque id dignissim ultrices, sapien augue vestibulum velit, a sollicitudin justo dolor ut elit. Donec ultricies euismod mi, id venenatis justo porttitor vitae. Duis elit nisi, faucibus eu velit non, suscipit pellentesque lacus.</p> 
 

 
</div> 
 
</div> 
 

 

 
     
 
     
 
     
 
</section>

답변

0

매우 흥미로운 행동 ... 그것은 알아낼 걸 렸어요하지만 범인은 당신이 그것을 높이를 줄 CSS .. 제거 CSS입니다 및 100 %의 너비, 그리고 그것은 괜찮습니다.

 <style> 
     body { 
      background-attachment: fixed; 
      font-family: Helvetica, Arial, sans-serif; 
      overflow-x: hidden; 
     }   

    </style> 
    $(document).ready(function() { 
    $("nav").find("a").click(function(e) { 
     e.preventDefault(); 
     var section = $(this).attr("href"); 
     $('html, body').animate({ 
       scrollTop: $(section).offset().top 
      }, 2000); 
    }); 

}); 
+0

Niiiceee, 그 작업! –