Backbone Marionette - Fügen Sie einen visuellen Effekt beim Umschalten anzeigen
Ist es ein bequemer Weg, um einen Effekt hinzufügen, wenn ich eine Seite (in der Nähe einer Ansicht/layout) und öffnen Sie eine neue in der gleichen region ? (so etwas wie ein fade-Effekt)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Marionette Regionen haben eine Methode namens
open
dass standardmäßig ersetzen Sie einfach den HTML-Code der alten Ansicht mit der neuen Ansicht. Sie können diese Methode überschreiben, um jede animation, die Sie mögen. Aus der region-Dokumentation:Festgelegt, Wie die Ansicht
el
Befestigt IstWenn Sie brauchen, um zu ändern, wie die Ansicht mit dem DOM verknüpft, wenn
zeigt einen Blick über eine region, überschreiben Sie die
open
Methode derregion. Diese Methode empfängt ein parameter - Ansicht zu zeigen.
Die default-Implementierung von
open
ist:Diese ersetzen wird der Inhalt der region mit der Ansicht
el
/content. Sie ändern können, um dies alles, was Sie wünschen,obwohl, Erleichterung des übergangs-Effekte und vieles mehr.
Diesem Beispiel dazu, dass ein Blick nach unten rutschen von oben
der region, statt nur erscheinen in Ort.
open
Methode ist nunattachHtml
in den letzten Versionen der Marionette. Checkout: marionettejs.com/docs/...Könnte man das überschreiben der
close
Funktion auf der Ansicht, etwas wie das zu tun:Und tun Sie etwas ähnliches mit Ihrem
render
Funktionen.Dies scheint für mich arbeiten:
this.$el.hide();
this.$el.slideDown("fast");
Für die künftigen Nutzer konnten die Menschen user mein plugin für den Übergang Unterstützung bei der marionette.
https://github.com/saqibshakil/Marionette.TransitionRegion/
Ich verwendet css3 übergänge als diejenigen, die mehr hardware-Unterstützung als jquery-Animationen. der Nachteil an der Sache mit der code dadurch async, so seien Sie vorsichtig über, die.
Ich denke, dies könnte für Sie nützlich sein.
Den folgenden marionette plugin fügt 4 Art der übergänge. Es können einfach Hinzugefügt werden, mehr übergänge.
Im Grunde statt mit yourRegion.show(anzeigen)...
Sie können jetzt yourRegion.showAnimated(anzeigen, {animationType: 'yourAnimation'});
es ist sehr einfach zu bedienen.
https://github.com/marcinkrysiak1979/marionette.showAnimated
finden Sie in der Dokumentation auf github für mehr Infos