将字符串传递给Audio()

时间:2014-02-19 08:34:25

标签: jquery

我有一个jquery代码来播放音频文件。这是我采取mp3网址的地方

$(mp3link).append($("<textarea name="+"mp3link"+" id=\"mp33\" rows="+10+" cols="+75+"></textarea>"));

在某些地方,我在线使用这个mp3链接播放音频。

snd1 = new Audio("\""+$(mp33).val()+"\"");
snd1.play();

但它不是在玩。如果我硬编码它正常播放的网址。任何人都能说出这次传球的问题是什么?

1 个答案:

答案 0 :(得分:0)

我建议总是转义并用双引号括起属性值,或者使用单个代码作为字符串分隔符和内联双引号。

你曾经写过:

"<textarea name="+"mp3link"+"

实际上变为<textarea name=mp3link,然后您转义双引号:id=\"mp33\",它变为id="mp33"。更容易编写('<textarea att="value"')

其次,为什么不创建音频并通过方法设置src?

snd1 = new Audio();
snd1.src = $(mp33).val();
snd1.play();

$(mp33)是否存在?

编辑:我刚看到你使用textarea来获取值,而是使用.text()方法:

snd1 = new Audio();
    snd1.src = $('#mp33').text();
    snd1.play();