LoginSignup

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Word Pressでスマホだけが自動音楽再生されなくて困っています。

解決したいこと

WordPressのテーマswellを使っています。PCでは問題ないのですがアラートのOKクリック後にスマホだけ音楽が自動再生されません。TOPのリンクなど踏んで2度入り直した時のみBGMが鳴ります。
それでは、かっこが悪いのでなんとか1度で鳴るよになりませんか?
PHPはわからないのでJSの対応でお願いします。

発生している問題・エラー オーディオのHTMLコード

<figure class="wp-block-audio"><audio controls src="http://golem-works.com/wp-content/uploads/2023/07/vlog-hip-hop-8300.mp3" autoplay loop preload="auto"></audio></figure>

JSコード

<script>
  var audio = document.getElementById("myAudio");
  
  function playAudio() {
    audio.play();
  }
  
  function showAlert() {
    alert("OKをクリックすると音楽が再生されます。");
    playAudio();
  }
  
  window.addEventListener("DOMContentLoaded", function() {
    showAlert();
  });
</script>

よろしくおねがいします。

自分で試したこと

ここに問題・エラーに対して試したことを記載してください。
チャットGPTを使い何度か違うコードも試しましたがダメでした。

0

1Answer

コード自体が間違っている(不足してる部分はある)わけではないので、具体的なコードは書きません。
「1度リンクをふんでもaudioを再生できず、2度入りしたときには鳴る」ということは十分に再生出来るだけのバッファが足りずに絶えるという典型的なパターンかと思われます。

であれば十分にバッファを貯めてから再生させてしまえば良いのです。
次のリンク先には十分なヒントがありますからよく読んで下さい。


ここからは余計なお世話なので無視して構いません。

エンターテイメント的なコンテンツだとは思いますが、ページリンクを踏んでいきなり音を鳴らされるのはまあまあな確率で嫌われます。
ユーザービリティを考慮し、「音を鳴らす」「音を鳴らさない」という選択肢を提示された方が良いかと思います。

2

Comments

  1. @protein_d

    Questioner

    ありがとうございます。やはり音をならす、鳴らさないの選択肢は作るべきですかね?
    ありがとうございます。そちらで方向で考えます。

Your answer might help someone💌