2014-01-10 3 views
2

부트 스트랩 3으로 놀아 왔고 내 HTML의 초기 헤더 섹션을 스크롤 한 후 상단에서 전환되는 navbar를 만들려고합니다. 나는 거의 다 왔어. 나는 'affix'를 사용하여 스크롤 한 다음 성공적으로 탐색 막대를 추가했으며 전환과 함께 어느 정도 성공했습니다. 그러나 나는 아직도 2 (나는 사소한 희망) 문제를 가지고있다.부트 스트랩 3 내비게이션이 올바르게 전환되지 않습니다.

1) 전환이 너무 일찍 시작됩니다. (예 : navbar가 오기 전에 내 머리글을 통과하지 못했습니다.)

2) 전환이 올바르게 전환되지 않고 애니메이션으로 전환되는 대신 스냅 아웃됩니다.는 http://bootply.com/104811

사람이 내가 잘못 갔어요 어디 있는지 말해 수 : 여기

내가 작성한 코드?

도움이 되셨다면

감사합니다.

+0

내 업데이트 된 답변을 본 경우 확실하지 않습니다 ... 거기에 # 2도 추가했습니다. – Schmalzy

답변

2

DEMO

1 ) 컨테이너처럼 접사에 오프셋을 적용 할 머리글 아래의 요소를 사용합니다. 픽셀 수를 offset: { top: 100 }으로 하드 코딩하십시오. 내가 밖으로이 하나의 생각 생각

$('#nav').affix({ 
    offset: { top: $('#some-lower-element').offset().top } 
}); 

2) ...

당신이 볼 수 탐색을 유지하는 경우 (position: fixedtop: -50 (과) visibility: hidden을 제거 단지 화면 상단) 여전히 transition 위 위로 스크롤 할 때 작동합니다.

#nav{ 
    position: fixed; 
    width: 100%; 
    top:-50px; 
    transition: top 1s; 
    -webkit-transition: top 1s; /* Safari */ 
} 
+0

정말 고마워요! 이것은 두 가지 문제를 모두 처리했습니다. 내가 코드에 한 변경 사항은 새로운 요소 (# start-offset)를 문서에 조금 더 올려 놓은 것입니다. 나는 # nav-wrapper 안에 넣었지만 #nav를 뒤진다. 이렇게하면 '분홍색'헤더 섹션이 화면에서 사라지 자마자 navbar가 표시됩니다. 다시 도움 주셔서 감사합니다. – user3182413

관련 문제