Ich habe eine Website erstellt, auf der, wenn der Benutzer klickt, ein Ton abgespielt wird. Um zu verhindern, dass sich der Ton überschneidet, musste ich den folgenden Code hinzufügen:
n.pause();
n.currentTime = 0;
n.play();
Dies führt jedoch zu dem Fehler:
The play() request was interrupted by a call to pause()
Wird jedes Mal angezeigt, wenn das Soundereignis direkt nach einem anderen Trigger ausgelöst wird. Die Sounds spielen immer noch gut, aber ich möchte verhindern, dass diese Fehlermeldung ständig auftaucht. Irgendwelche Ideen?
onCanPlay()
. Alle diese Antworten sind schmutzige Hacks.
n.play()
dann versucht n.pause()
. Zu diesem Zweck beschreibt dieser Artikel zu Web Fundamentals die Lösung. tl; dr:n.play().then(() => { n.pause()})