Fußzeile zu animieren, auf Blättern
Momentan habe ich die Fußzeile erscheinen, sobald die Seite gescrollt einen set-point, aber möchte es zeigen, da der Benutzer scrollt, anstatt nur erscheinen auf dem Bildschirm (wie es derzeit der Fall ist).
Wäre daran interessiert zu wissen, ob es erreicht werden kann mit CSS-übergängen oder am besten üben.
Live-Beispiel
http://jsfiddle.net/robcleaton/3zh6h/
CSS
#footer {
background: black;
width: 100%;
height: 48px;
position: fixed;
z-index:300;
bottom: 0;
display: none;
}
#footer ul.navigation li {
float: left;
margin-right: 16px;
display: block;
}
JS
$(function(){
$(window).scroll(function() {
$('#footer').toggle($(document).scrollTop() > 100);
});
})
HTML
<div id="footer">
<div class="content-wrap">
<ul class="navigation">
<li><a href="#about">About</a></li>
<li><a href="#blog">Blog</a></li>
<li><a href="#support">Support</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div><!-- content-wrap END -->
</div><!-- footer END -->
- Welche animation hast du im Sinn? jQuery kann wohl Animation
InformationsquelleAutor Rob | 2012-11-06
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie das folgende tun, die Verwendung von CSS transitions
jQuery
Wir möchten hinzufügen oder entfernen einer Klasse aus der Fußzeile je nach scroll-position
CSS
Dann, CSS zu verwenden, ein-oder ausblenden des footer auf der Grundlage der Gegenwart, die
show
Klasse. Können wir mithilfe von css-transitions animieren, um die änderungWie Sie oben sehen können verändern wir die Höhe der Fußzeile, wenn es zu zeigen. Die
overflow:none;
hält den Inhalt der Fußzeile angezeigt, wenn die Höhe 0 ist.Mit dieser Methode können Sie auch fade-in die Fußzeile, indem Sie die Einstellung "Deckkraft" - Werte, oder animieren Sie eine änderung in der Farbe.
JS Fiddle:
http://jsfiddle.net/DigitalBiscuits/3zh6h/5/
Könnte Sie animieren, die Fußzeile mit fadeIn() und fadeOut() jQuery-Effekte.
Wenn du tief genug in diese Effekte werden Sie feststellen, dass beide verwendet animieren() Effekt mit dem Deckkraft.
Ich hatte einigen Spaß beim Experimentieren mit Ihrem Problem und ich habe nicht gesehen, dass jemand anderes probieren (Fiddle):
Diese Lösung wird auch verblassen die Fußzeile wieder aus, wenn der Benutzer scrollt wieder nach oben.
Es gibt einen großen Nachteil dieser Lösung: weil es verwendet die
fadeTo()
Methode, Unterstützung im IE geht äußerst begrenzt zu sein (tatsächlich, wird es brechen in den meisten Versionen von IE - ich kann mich nicht erinnern, was die Unterstützung ist für 9 und 10). Sie können dies umgehen, indem mit Hilfe einer von einem Dutzend plugins/fixes, um Unterstützung in IE für die Animation deropacity
- Eigenschaft, und ändern Sie diese Lösung entsprechend (mitanimate()
stattfadeTo()
).Lassen Sie mich wissen, wenn Sie irgendwelche Fragen haben. Viel Glück! 🙂
Ich denke, das sollte der Weg sein:
http://jsfiddle.net/gQqLJ/
JQuery & Animationen
Für so etwas, würde ich raten, mit einer Kombination Wirkung von slide-und fade. Es ist viel mehr natürlich aussehende und daher nicht jar den Benutzer, wenn die auftreten.
Den arbeiten fiddle: http://jsfiddle.net/3zh6h/32/
Den relevanten code-snippet nicht in die Geige, aber hier, um zu demonstrieren, wie dies mit den von coding best practices im Hinterkopf):
Best Practices
Im Hinblick auf best practices, finden Sie einen sehr schönen Beitrag über benutzerdefinierte Animationen und wie Sie zu schreiben in einer wiederverwendbaren Art und Weise hier.
Gibt es keine "jquery-footer-animation" best practices als solche, zumindest, die ich kenne, aber Sie können zeichnen Sie aus populären, gut gestaltete websites, zu wissen, was funktioniert und was nicht. Beispiele für diese wäre nicht gut, da es hängt von der Art und dem Kontext Ihrer website.
CSS
Ich würde nicht raten, CSS-übergänge, da die specs sind nicht abgeschlossen (offizielle Entwürfe, Diskussionen können sein gefunden hier).
Auch, Sie sind nicht cross-browser-kompatibel vor allem w.r.t. ältere Browser. Aber dann wieder, das ist nur meine Meinung.