2016-06-24 3 views
1

Dies ist meine erste Frage zu Stackoverflow.JS Animation Spin auf Hover

Ich frage mich, ob jemand mich auf eine Lösung/Ressource auf animierende Schaltflächen mit JS/JQuery zeigen kann.

Insbesondere die Animation, die ich nicht herausfinden kann, dreht eine kreisförmige Schaltfläche um 180 Grad beim Schweben.

Thanks :)

+1

[_Create ein Minimal, Complete, und prüfbare example_] (http: // Stackoverflow .com/help/mcve) was zeigen könnte, was Sie versucht haben. – Rayon

+1

Wenn Sie eine Schaltfläche bei Hover animieren möchten, sollten Sie in CSS Animationen schauen. Je weniger Javascript Sie benötigen, desto besser. Wenn Sie immer noch mit Javascript gehen möchten, könnte dies helfen https://developer.mozilla.org/en-US/docs/Web/API/Element/animate – fjsuarez

+1

Ich denke, Ihre Antwort ist hier http://StackOverflow.com/questions/15191058/css-rotation-cross-browser-mit-jquery-animate – ihemant360

Antwort

1

Die intuitive Antwort fand ich, war dies:

<div class="flip-container" ontouchstart="this.classList.toggle('hover');"> 
    <div class="flipper"> 
     <div class="front"> 
      <!-- front content --> 
     </div> 
     <div class="back"> 
      <!-- back content --> 
     </div> 
    </div> 
</div> 

    /*CSS entire container, keeps perspective */ 
.flip-container { 
    perspective: 1000px; 
} 
    /* flip the pane when hovered */ 
    .flip-container:hover .flipper, .flip-container.hover .flipper { 
     transform: rotateY(180deg); 
    } 

.flip-container, .front, .back { 
    width: 320px; 
    height: 480px; 
} 

/* flip speed goes here */ 
.flipper { 
    transition: 0.6s; 
    transform-style: preserve-3d; 

    position: relative; 
} 

/* hide back of pane during swap */ 
.front, .back { 
    backface-visibility: hidden; 

    position: absolute; 
    top: 0; 
    left: 0; 
} 

/* front pane, placed above back */ 
.front { 
    z-index: 2; 
    /* for firefox 31 */ 
    transform: rotateY(0deg); 
} 

/* back, initially hidden pane */ 
.back { 
    transform: rotateY(180deg); 
} 

Weitere Erläuterungen finden Sie hier: https://davidwalsh.name/css-flip

1

Sie css Keyframes

div { 
    width: 100px; 
    height: 100px; 
    background: red; 
    position :relative; 
    -webkit-animation: mymove 1s infinite; /* Chrome, Safari, Opera */ 
    animation: mymove 1s infinite; 
} 


/* Standard syntax */ 
@keyframes mymove { 
     from { transform: rotateY(0deg);} 
to { transform: rotateY(360deg); 

} 
+0

Danke! Gibt es eine Möglichkeit, sie beim Schweben um 180 Grad drehen zu lassen, und wenn der Zeiger vom Element wegbewegt wird, muss er zurückgeschleudert werden? Gerade jetzt dreht es sich beim Schweben hin und her. – protoEvangelion

1

Sie können Schaltflächen animieren CSS verwenden können. Unter http://www.w3schools.com/css/css3_animations.asp können Sie mehr über CSS-Animationen erfahren. Vielleicht möchten Sie auch über CSS-Übergänge unter http://www.w3schools.com/css/css3_transitions.asp lernen. Wenn Sie eine Animation mit JS erstellen möchten, setzen Sie eine CSS-Transition für das HTML-Element, das Sie animieren möchten, und verwenden Sie dann JS, um CSS-Eigenschaften wie background-color und transform festzulegen. Sie können auf das CSS eines Elements zugreifen, indem Sie element.style.property verwenden. Ersetzen Sie property durch die Eigenschaft, die Sie ändern oder hinzufügen möchten.

+0

Danke, dass Sie sich die Zeit genommen haben, mich in die richtige Richtung zu weisen! – protoEvangelion