如何在爆米花中选择曲目.js使用字符串并播放

How to select a track in popcorn.js using a string and play it?

本文关键字:字符 字符串 播放 串并 js 曲目 爆米花 选择      更新时间:2023-09-26

所以,这是瘦的:

运行爆米花.js在YouTube视频和单独的音频循环上。每一个都是一个轨道,如"视频"和"音频1"等。

我通过套接字

进行用户交互,该套接字将命令作为"Play_audio1"之类的字符串发送到窗口。然后使用 split 解析此字符串。

所以我们得到:

var messageArray = message.split("_");

因此,messageArray[0] 是我的命令,而 messageArray[1] 是要执行它的轨道。

问题所在

我正在尝试执行代码以使用窗口选择曲目,并在其上运行爆米花函数 play(),但它不起作用。回击未定义。

case 'Play':
   window[messageArray[1]][play]();
break;

我的错误在哪里?

eval() 有效,但我听说是魔鬼。

编辑:

为了帮助添加这一点,我将包含一个爆米花.js曲目代码:

var audio1 = Popcorn.smart( "#audio1", "audiofile1.wav",{
        frameAnimation: true
     });

在你的 HTML 中,你有

<audio id="audio1"></audio>

爆米花.js用您选择的文件填充它,要播放,您通常只需使用

audio1.play();
我认为

这是因为您使用 messageArray[1] 作为窗口的索引。也许您应该先尝试使用该值创建一个变量。然后在窗口内使用它。

var audioFile = messageArray[1];