Ich programmiere gerade eine Bibliothek namens quickly.js
. Es gibt conceal(milliseconds)
und display()
Funktionen, die Animationen haben, die über CSS programmiert werden. Die Maskierungsfunktionsanimation funktioniert ordnungsgemäß, aber die Animation der Anzeigefunktion funktioniert nicht korrekt. Es verblasst nicht. Stattdessen erscheint es abrupt. Hier ist ein JSFiddle, der den Fehler demonstriert: https://jsfiddle.net/v6esmqtf/6/.JavaScript + CSS3 Animationen funktionieren nicht richtig?
Antwort
Sie hatten einfach nicht die display
Funktion eingerichtet.
Element.prototype.conceal = function(ms) {
ms = ms || 0;
var thisStyle = this.style;
thisStyle.opacity = 0;
setTimeout(function() {
thisStyle.display = "none";
}, ms);
};
Element.prototype.display = function(ms) {
ms = ms || 0;
var thisStyle = this.style;
thisStyle.display = "";
setTimeout(function() {
thisStyle.opacity = 1;
}, ms);
};
Und dann ...
document.getElementById("conceal").onclick = function() {
document.getElementById("get").conceal(800);
};
document.getElementById("display").onclick = function() {
document.getElementById("get").display(0);
};
Hoffnung, das hilft.
Das ist seltsam, dass setTimeout() auch ohne Verzögerung da sein muss. Ich habe den Code geändert, um keine Parameter in der 'display()' Funktion zu haben. Stattdessen führe ich setTimeout() ohne Verzögerung. – Bennett
I * denke * es ist, weil 'opacity' mal einen eingebauten Keyframe hat - du könntest stattdessen JQ für' $ ("# get") benutzen animate ({opacity: '1'}, 5000); '- http: // stackoverflow.com/questions/23180504/css-opacity-change-on-div-with-time-delay-not-user-interaction – discipline
- 1. CSS3 Übergänge/Animationen funktionieren nicht
- 2. Rails Javascript funktionieren nicht richtig
- 3. Javascript Registerkarten funktionieren nicht richtig
- 4. Verwenden Sie Javascript oder CSS3 für Animationen?
- 5. Animationen in Canvas funktionieren nicht
- 6. CSS3 Animationen funktionieren in jedem Browser außer Chrome
- 7. CSS3 Übergänge, Keyframes, Animationen
- 8. Wie Zweiweg-CSS3 Animationen
- 9. Mehrere Keyframe-Animationen funktionieren nicht in Safari
- 10. UIViewController-Animationen funktionieren nicht mehr
- 11. AngularJS 1.5.6 - ngRepeat Animationen funktionieren nicht
- 12. geschachtelte CSS3-Flexboxen funktionieren nicht
- 13. Javascript: selfmade Methoden funktionieren nicht richtig
- 14. fontSize funktionieren nicht richtig
- 15. Readprocessmemory funktionieren nicht richtig
- 16. Abfrageparameter funktionieren nicht richtig
- 17. Sequentielle Translate-Animationen funktionieren nicht wie erwartet
- 18. Angular2 tutorial Animationen funktionieren nicht mit IE11
- 19. iPhone Transitionen und Animationen in HTML5 und CSS3
- 20. Mehrere Mods funktionieren nicht richtig
- 21. Pulsierende Leaflet-Markierung mit CSS3-Animationen
- 22. CSS3 Keyframe Animationen träge auf Retina Display
- 23. CSS3 Animationen erleichtern-in-out unendlich
- 24. Erstellen Sie Hintergrundfarbe CSS3-Animationen nach Hintergrundbildanimation
- 25. CALayer explizite Animationen verhalten sich nicht richtig
- 26. Javascript Arrays funktionieren nicht?
- 27. CSS3 Funktion calc() funktioniert nicht richtig
- 28. Python-Subplots funktionieren nicht richtig
- 29. Kann bind_param() nicht richtig funktionieren
- 30. Kann RaycastHit2D nicht richtig funktionieren
Was meinen Sie mit "funktioniert nicht richtig"? Bitte geben Sie genau an, was Sie tun möchten. – discipline
@discipline aktualisierte Frage – Bennett
Sie haben die Anzeigefunktion nicht eingerichtet - jsfiddle.net/ypz7m241/ – discipline