Maison  >  Questions et réponses  >  le corps du texte

javascript - La balise audio IOS WeChat ne peut pas être lue via Touchend

Pour créer un mini-jeu h5, vous devez appuyer longuement et relâcher le bouton pour émettre un effet sonore

GameStart.addEventListener('touchend', function(event) {
    event.preventDefault();
    Audio.play();
}, false);

Le mécanisme d'IOS doit être déclenché manuellement par l'utilisateur, mais cela devrait être considéré comme correct pour moi ?
Je ne comprends vraiment pas, mais il peut être joué normalement avec touchstart,
ou y a-t-il. une solution qui peut résoudre mes besoins ? ,
Appuyez longuement sur le bouton et relâchez-le pour jouer l'effet sonore

给我你的怀抱给我你的怀抱2638 Il y a quelques jours886

répondre à tous(2)je répondrai

  • 天蓬老师

    天蓬老师2017-06-30 09:58:15

    Remarque : sur iOS, l'API Web Audio nécessite que les sons soient déclenchés à partir d'une action utilisateur explicite, telle qu'un tapotement. L'appel de noteOn() à partir d'un événement onload ne jouera pas de son.

    J'ai cherché pendant longtemps mais je n'ai pas trouvé la définition exacte d'Apple de l'action de l'utilisateur. Peut-être que touchend n'appartient pas à l'action de l'utilisateur
    Pour autant que je puisse essayer maintenant, cliquer et toucher le démarrage sont réalisables

    .

    Vous pouvez essayer d'exécuter Audio.load() au touchstart, puis exécuter Audio.play() au touchend ;

    répondre
    0
  • ringa_lee

    ringa_lee2017-06-30 09:58:15

    Cette méthode est la solution !

    répondre
    0
  • Annulerrépondre