【发布时间】:2019-07-17 08:10:33
【问题描述】:
我正在尝试制作具有音频可视化功能的音乐播放器。我希望它在我单击曲目名称时起作用,然后该曲目应该开始播放
<script src="main.js"> </script>
<script src="/circular-audio-wave.min.js"></script>
<script>
var sel2= 'audio/audio3.mp3',
sel1 = '';
$( "li" ).click(function() {
sel1 = ($(this).data('val'));
sel2 = 'audio/' + sel1;
console.log(sel2);
});
let wave = new CircularAudioWave(document.getElementById('chart-container'));
wave.loadAudio(sel2);
</script>
我希望将 sel2 值发送到 jQuery 函数之外,以便“wave.loadAudio(sel2);”可以使用它。在运行这个脚本时,我只播放了“audio/audio3.mp3”,因为我之前已经将此值赋给了变量。 我希望它设置 sel2 的新值(无论我单击哪个,然后将其传递给 wave.loadAudio(sel2)),这样每次单击新曲目时我都会播放该曲目。
【问题讨论】:
-
然后把
wave.loadAudio(sel2)放到你的函数里? -
问题不在于你无法在回调函数之外获取
sel2的值,问题在于你试图获取它的时候。您在重新分配之前访问它(在单击元素之前)。
标签: javascript jquery