Ich habe eine Kopfzeile, die 2 Positionen 1 absolut und fixiert, wenn Sie blättern muss ich die Kopfzeile, um reibungslos einschieben und wenn Sie zurück nach oben scrollen wird es herausgleiten .. Ich kann nicht bekommen es zu schieben es nur beim Scrollen nach oben und aus.Hinzufügen entfernen Klasse für Folie in div
(function($) {
$(document).ready(function(){
$(window).scroll(function(){
if ($(this).scrollTop() > 300) { \t \t \t \t
\t \t \t \t $('.header').addClass('fixed');
\t } else {
\t \t \t \t $('.header').removeClass('fixed');
}
});
});
})(jQuery);
.header {
position: absolute; \t
width:100%;
height:86px;
background: red;
color: #fff;
}
.header.fixed {
width:100%;
height:66px;
position:fixed;
top:0px;
background:#000;
color: #fff;
-moz-transform: translateY(-130px);
-ms-transform: translateY(-130px);
-webkit-transform: translateY(-130px);
transform: translateY(-130px);
transition: transform .5s ease;
}
.header.fixed {
-moz-transform: translateY(0);
-ms-transform: translateY(0);
-webkit-transform: translateY(0);
transform: translateY(0);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="header">
<span>My Div</span>
</div>
<div style="height: 2000px; background-color: grey;">Content</div>
, wenn Sie zurückblättern es herausziehen bis es nicht verschwindet nur – Codi
Es gibt keine gute Möglichkeit ist, dass zurück zu schieben, da Benutzer die Scrollbar bewegt, werden Sie eine wirklich schlechte träge sehen Animation. Sie müssen improvisieren, wie Sie das herausholen, eine davon wird die 'fixed' Klasse entfernen, wenn sie das Ende erreicht hat, scrollTop == 0' und nicht' scrollTop <300' oder einfach nur die Position fixieren Standard. Aktualisierte Antwort für 'scrollTop == 0' Lösung. – masterpreenz