Wie du einen jQuery-animation zurück zum original-CSS-Eigenschaften

Gibt es viele sehr ähnliche Fragen hier, aber ich kann nicht finden, eine genaue Antwort auf meine Frage.

Ich bin neu in der Verwendung der jQuery - .animate() Methode und ich möchte wissen, ob es eine gängige oder beste Methode der Umkehrung der animation?

Hier ist ein Turnschuh ein Beispiel für das, was ich mir ausgedacht habe:
Fiddle

Im wesentlichen alle es tut, ist, verwenden Sie eine if-Anweisung zu prüfen, eine CSS-Eigenschaft und dann animieren Sie ihn mit einem Staat oder zurück zu den anderen Staat.

JS:

$(document).ready(function () {
    $("[name=toggle]").on("click", function () {
        if ($('.box').width() < 125) {
            $(".box").animate({
                opacity: .3,
                width: "125px",
                height: "125px"
            }, 250);
        } else {
            $(".box").animate({
                opacity: 1,
                width: "100px",
                height: "100px"
            }, 250)
        }
    });
});

CSS:

.box {
    background-color: lightblue;
    box-shadow: 5px 5px 10px #000000;
    width: 100px;
    height: 100px;
    display: block;
    margin: 20px auto 0 auto;
    border-radius: 25px;
}
[name="toggle"] {
    display: block;
    margin: 0 auto;
    margin-top: 15px;
}

HTML:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<button name="toggle">Animate</button>
<div class="box"></div>

Dies ist, was ich war in der Lage zu kommen mit meiner ersten Exposition .animieren(), aber ich glaube, es gibt einen besseren Weg.
Sagen Sie, dass Sie wollen, um eine animation zu schweben, und Umgekehrt die animation, wenn die Maus bewegt wird von dem element. Gibt es einen Weg, um leicht umkehren der jQuery-animation leicht? Ich bin Weg, ich könnte mit einem :hover-Zustand mit CSS, aber das ist eine hypothetische Frage bezüglich jQuery .animieren().

  • Soweit ich weiß, gibt es nicht eine reverse Funktion mit animate(), ich benutze VelocityJS viel mehr, obwohl (es hat reverse Unterstützung), lohnt sich
  • Sieht sehr cool aus, werde ich anfangen zu spielen mit ihm um,
  • $(".yourelem").removeAttr("style");
  • Es gibt wahrscheinlich nicht eine bessere Weise. Plain .css() können Sie übergeben Sie eine leere Zeichenfolge ('') zum löschen der in der Regel aus dem element (also das zurücksetzen der stylesheet), aber das scheint nicht zu funktionieren mit .animate()
InformationsquelleAutor jmancherje | 2015-11-05
Schreibe einen Kommentar