Ich bin neu in Framer und habe nur ein Grundwissen über Javascript..once in Framer Studio arbeiten?
Ich versuche, einen Framer-Prototyp mit dem Framer Audio Player Modul zu erstellen. Es funktioniert gut für die grundlegende Situation, die ich mir ausgedacht habe, aber jetzt, wo ich versuche, etwas etwas Komplexeres zu tun, bleibe ich stecken.
Was ich versuche zu tun: Ich möchte einen Audioclip auf schweben spielen. Wenn der Benutzer für die Dauer des Audioclips weiter schwebt, sollte, sobald der erste Clip beendet ist, ein weiterer "Erfolg" - Clip einmal abgespielt werden.
Im folgenden Code spielt der erste Clip gut, aber der zweite Clip wiederholt sich immer wieder. Ich habe versucht, .once()
, durch Eingabe - Versuchs- und Fehlerstil - verschiedene Formen von 'audio.player.once "ended", ->'
und 'audio.player.play().once'
zu verwenden, aber dieser Ansatz funktioniert nicht. Ich konnte .once
in den Framer-Dokumenten auch nicht finden.
Hier ist mein Framer/Coffeescript-Code-Snippet:
mouseOver = (bool) ->
if bool
goal.animate
properties:
opacity: .5
backgroundColor: "transparent"
borderColor: "8AFFC1"
borderWidth: 3
sensor.animate
backgroundColor: "green"
options:
time: 0.25
audio.player.play() # play first clip
audio.player.loop = false
audio.player.on "ended", -> # when first clip has ended...
print "done"
audio.player.src = "success.wav"
audio.player.play() # I only want this to play once!
else
goal.animate
properties:
opacity: 1
backgroundColor: "transparent"
borderWidth: 3
borderColor: "white"
sensor.animate
backgroundColor: "red"
options:
time: 0.25
audio.player.pause()
reset = !bool
Ich fühle mich wie es hier wohl eine einfache Antwort, aber mein begrenztes Verständnis Auslösung mich. Hat jemand irgendwelche Gedanken? Vielen Dank!