사용자가 페이지를 스크롤하면 고정 위치 헤더가 생성됩니다. 저는 JQuery (Angular를 사용하는 페이지에서)를 사용하고 scrollTop이 250px 이상이되면 즉시 페이드 인하려면 (디스플레이 : 없음을 사용하고 있습니다) 즉시 <50px 일 때 사라집니다.JQuery 스크롤 및 일부 숨겨진 표제
천천히 내 코드가 작동을 스크롤 할 때까지 스크롤 속도 250 픽셀 마크 위에 다시 나타납니다 숨겨진해야 H1에서 아래로 때 https://jsfiddle.net/gilestaylor/jpaqbm36/
사람이 수정 프로그램을 추천 할 수 있습니까? 아니면 이렇게하는 더 똑똑한 방법? (어떤 조언을 많이 감사합니다, 그래서 난 여전히 밧줄을 배우고!)
HTML
<header>
<h1>Order some food</h1>
</header>
<div id="bar">
<h1>Order some food</h1>
</div>
JS
$(function() {
$(window).scroll(function() {
if ($(window).scrollTop() > 250) {
$('#bar').css({
'height': '50px'
});
$('#bar h1').fadeIn(1000);
}
else {
$('#bar').css({
'height': '0'
});
$('#bar h1').css({'display': 'none'});
};
});
});
- 좋은 지적하지만, 지금은 다시 볼 것을, 나는 코드가 실행되지 않습니다 그래서 위에서 전환하지 않는 한 확인이 있어야한다 생각하고있어 250 포인트 아래. –
하지만 fadeIn() 전에 .stop()이 없으면 여전히 애니메이션으로 표시됩니다. 나에게 잘 작동합니다. https://jsfiddle.net/jpaqbm36/6/ –
@ Mohamed-Yousef - 창을 스크롤 한 후 250 점을 지나면'.stop() .fadeIn()'이 계속 호출 될 것입니다. 요소가 이미 완전히 표시되었으므로 실제로 아무 것도하지 않지만 계속 부르는 것은 잘못되었습니다. –