我正在制作一个自定义HTML5 / JQuery音频播放器,我的音频标签名为name="Song Name"
,我想使用JQuery获取该名称标签值并将其写入<p></p>
标签。但无论何时运行它只是说[object Object]
而不是名称值。
HTML
<p id="song-name"></p>
<audio name="Song 1" src="/song1.mp3" type="audio/mpeg">
<audio name="Song 2" src="/song2.mp3" type="audio/mpeg">
<audio name="Song 3" src="/song3.mp3" type="audio/mpeg">
JQuery的
var songName = $("audio[name]")
$("#song-name").text(songName);
答案 0 :(得分:0)
要获取名称值,您需要调用attr
调用并按名称获取。
var songName = $("audio[name]").attr("name")
您正在将该变量设置为Jquery对象,该对象的文本值为[object Object]
。
答案 1 :(得分:0)
$('audio[name]')
为您提供了所有三个音频选择器,需要执行每个循环以获取每个音频名称的值。
有3个音频标签
$('audio[name]').eq(0).attr('name');
$('audio[name]').eq(1).attr('name');
$('audio[name]').eq(2).attr('name');
<强> JS 强>
$('audio[name]').each(function(){
alert($(this).attr('name'));
});
答案 2 :(得分:0)
您可以尝试使用处理程序:
对于以Song
开头的音频名称:
$(function(){
$('audio[name^=Song]').on('play', fuction() {
$('#song-name').text(this.name);
});
});
OR
对于任何音频:
$(function(){
$('audio').on('play', fuction() {
$('#song-name').text(this.name);
});
});
答案 3 :(得分:0)
只需使用
$(".audio-player").eq(z).attr("name")