2016-08-02 18 views
0

Ich versuche eine seitenweise Interaktion herzustellen, bei der ein Benutzer jederzeit auf eine Schaltfläche klicken kann, um sie auf eine andere Seite zu verschieben. Jede Seite ist nur ein Punkt auf der Timeline, an dem sie angehalten wird, und gibt den Seiten-Movieclip wieder. etwa so:Aktion "Alle stummschalten" in Animate CC

exportRoot.introEnabled.addEventListener("click", introHandler.bind(this)); 

function introHandler() 
{ 
    //mute all media here? 

    exportRoot.gotoAndPlay(0); // <-- Frame where page starts 
} 

Mein Problem kommt in, wo dies ist ein HTML5 Canvas statt einer Action Sache, was bedeutet, dass der Ton anzu Ereignis synchronisiert hat.

Das Problem besteht darin, dass beim Wechseln der Seiten mit gotoAndPlay() für jede Szene der Ton der vorherigen Szene nicht stoppt.

Suchvorgänge bringen nichts, was sich lohnt, hier anzulegen, das entfernt hilfreich ist.

Ich frage mich, ob es eine Möglichkeit gibt, alle Sounds innerhalb einer Tastenfunktion stumm zu schalten oder zu stoppen?

** Hinweis: Jede Seite hat etwa 10 Sounds, also nur Stummschalten oder Stoppen jeder Sound einzeln wäre wirklich ärgerlich.

Antwort

1

Um alle Wiedergabe-Sounds zu stoppen, können Sie einfach die statische stop-Methode unter createjs.Sound verwenden.

createjs.Sound.stop(); 

Beachten Sie, dass dies jeden Ton stoppt, der gerade abgespielt wird. Sie können jede Soundinstanz erneut aufrufen, indem Sie erneut play() aufrufen, aber es gibt keine Möglichkeit, alle wieder aufzunehmen.

Eine bessere Möglichkeit besteht darin, wiedergegebene Sounds in einem Array zu speichern, und wenn Sie sie löschen möchten, wiederholen Sie das Array, um sie einzeln anzuhalten oder anzuhalten. Wenn Sie fertig sind, löschen Sie das Array und beginnen Sie von vorne.

Prost,

+0

Danke! Ich werde beides versuchen und sehen, was besser für mich funktioniert :) – Mike

Verwandte Themen