There’s a policy on iOS that blocks sounds. Apparently I need to run them on a user interaction handler like a “click” one. But, for example, I have a sound effect playing from a transitionend handler. I tried adding a click event to the body that would run on the users first click and play the sound effects and immediately pause them (they don’t actually play, it’s just to get past the user interaction requirement so that they are ready to play when I actually want them to play). But this doesn’t work 100%. The sounds play but with issues. Is there a standard way to deal with this?
I also noticed the sounds don’t work the same as in PC, Android. For example:
onElementClickSound.currentTime = 0; onElementClickSound.play();
^ that makes it so that the sound plays every time I click the element. But it doesn’t work in iOS. Each instance has to wait for the last one to finish playing. And multiple different sound effects don’t run at the same time like on PC / Android.