Q.1。私はJoomlaでJCEエディタを使ってコードを書こうとしています。ここで私はbowserで再生しようとしているオーディオファイルを持っています。 以下は私が書いたJavaスクリプトコードです。Javaスクリプト条件文の発行
<script type="text/javascript">
var audio, playbtn;
function initAudioPlayer() {
audio = new Audio();
audio.src = "/images/audios/how-to-meditate/relaxation/relaxation-in-the-forest.mp3";
audio.loop = false;
audio.pause();
//set object references
playbtn = document.getElementById("playpausebtn");
//Add Event Handling
playbtn.addEventListener("click", playPause);
//Funtions
function playPause() {
if (audio.pause) {
audio.play();
playbtn.style.background = "url(images/icons/pause.JPG)";
} else {
audio.pause();
playbtn.style.background = "url(images/icons/play.JPG) no-repeat";
}
}
}
window.addEventListener("load", initAudioPlayer);
</script>
以下はCSSコードです。
<style scoped="scoped" type="text/css">
button#playpausebtn {
background: url(images/icons/play.JPG) no-repeat;
border: none;
width: 40px;
height: 40px;
cursor: pointer;
outline: none;
}
そして、htmlのボタンコード。この場合
<button id="playpausebtn"></button>
私は再生ボタンにオーディオが再生をクリックしたときに私は何も起こりませんし、オーディオは私がプレーし続けている、それは停止しないオーディオを停止するには、ボタンもう一度クリックすると、実行中audio.pauseが真でないかどうかを指定するelseステートメントが含まれています。つまり、オーディオが再生されているときにクリックすると、オーディオは停止し、再生ボタンは表示されますが、何も起こりません。 私は以下のコードを書いたコードを逆転しようとしました。
function playPause() {
if (audio.play) {
audio.pause();
playbtn.style.background = "url(images/icons/play.JPG) no-repeat";
} else {
audio.play();
playbtn.style.background = "url(images/icons/pause.JPG)";
}
}
その後、オーディオが再生されていると私は一時停止ボタンをクリックした場合、それが動作し、私はオーディオを再生しようとすると、それが再生されないだけで、この場合には
どちらの場合も、他のコードが実行されないことがわかりました。なぜそれが起こっているのか理解できませんでした。
私はJoomlaの3.7.5を使用していますが、スクリプトが親切、問題の原因をアドバイスJCEエディタ
で許可されています。
Q.2。最後に、オーディオが完全に再生されたら、再生ボタンを表示するコードを書く方法を知りたいですか?
'audio.pause'が関数である場合、それは常にtruthyになります。私はあなたがそれが一時停止しているかどうかを確認するためにそれを使用することができます疑いがあります。 – Carcigenicate
変数を使用して、すべての状態でその値を変更する – Roljhon