我正在尝试创建音频文件的播放列表。 html包含三个音频标签:
<ul id="myAudio">
<li>
<audio class="audio" id="1" controls>
<source src="_audio/Clear_Vision.mp3" type="audio/mpeg" />
</audio>
</li>
<li>
<audio class="audio" id="2" controls>
<source src="_audio/Greensleeves.mp3" type="audio/mpeg" />
</audio>
</li>
<li>
<audio class="audio" id="3" controls>
<source src="_audio/Pavane21Sec.mp3" type="audio/mpeg" />
</audio>
</li>
</ul>
到目前为止,我的javascript(jquery)是:
$(document).ready(function(){
var audioElement = document.createElement('audio');
var x = 1;
x = parseInt(x);
var deisredAudio = $('source:nth(0)').attr('src');
audioElement.setAttribute('src', deisredAudio);
$.get();
audioElement.addEventListener("load", function(){
audioElement.play();
}, true);
$('#playAudio').click(function(){
audioElement.play();
});
$('#pauseAudio').click(function(){
audioElement.pause();
});
});
只要我在$('source:nth(0)')
中有一个整数,这就会播放音轨。
这将播放第一个音频,$('source:nth(1)')
将播放第二个音频,依此类推。
我需要做的是插入一个变量,最终创建一个循环来循环播放音轨。
当我声明变量x = 1
,然后将其插入$('source:nth(x)')
时,它不起作用。
请注意,我是用JavaScript自学的。
非常感谢任何帮助或见解。
答案 0 :(得分:5)
您需要将其从引号中取出并使用字符串连接将其传递到:nth()
:
$('source:nth(' + x + ')')
...否则您将使用字符文字&#34; x&#34;。