후 두 번째 클릭에서 작동합니다. 그것은 scrollTo 클릭의 바인딩을 할 수 있습니다,하지만 그것을 해결하는 방법을 알아낼 수 없습니다.그 한 번 클릭 내 토글 기능은 두 번째 클릭에 작동한다, 나는 scrollTo 함수를 사용하여 일부 모바일 내비게이션이 scrollTo 이벤트
HTML :
<div class="nav-bar">
<ul class="nav">
<li><a href="#section1">Section 1</a></li>
<li><a href="#section2">Section 2</a></li>
<li><a href="#section3">Section 3</a></li>
</ul>
<a class="nav-toggle">Menu</a>
</div>
<div class="section-wrap">
<div id="section1" class="section">Section 1</div>
<div id="section2" class="section">Section 2</div>
<div id="section3" class="section">Section 3</div>
</div>
JS :
$('ul.nav a').bind('click',function(event){
$('ul.nav a').removeClass('on');
$(this).addClass('on');
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top - 30
}, 200, function() {
$('.nav-bar').removeClass('open');
});
event.preventDefault();
});
$('a.nav-toggle').toggle(function() {
$('.nav-bar').addClass('open');
}, function() {
$('.nav-bar').removeClass('open');
});
문제의 작동 예를 들어이 참조 : 애니메이션의 끝에서 http://jsfiddle.net/MhSKC/9/
를 사용하여, 나는 바보 같은 느낌 : 여기에 약간 수정 된 솔루션이다. 도움에 다시 한번 감사드립니다. –