编写元素JQuery的名称标签

时间:2015-01-31 02:05:33

标签: jquery html5 audio html5-audio

我正在制作一个自定义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);

JSfiddle

4 个答案:

答案 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")