如何给scr赋值
How to put value into scr
我需要从 link 中获取 href 的值,并将该值放入源选择器的 scr。
<source src="HERE should be value" type="audio/mpeg">
我的代码
<div id="music">
<a href="horse.mp3">taken</a>
</div>
<audio controls>
<source src="1.mp3" type="audio/mpeg">
</audio>
<script>
$(document).ready(function(){
$('#music a').click(function(){
event.preventDefault();
var value = $(this).attr('href');
$('p').html("<p>"+value+"</p>");
$('source').html("<source[scr$="+value+"</source>");
});
});
</script>
目的 1.mp3 应该与 hourse.mp3 交换
我的代码不起作用,scr 的值没有改变
有什么想法吗?
直接设置src
属性:
$('source').attr("src", value);
要预加载来自新源的音频,请使用 audio|video.load() 函数:
$('#music a').click(function(){
event.preventDefault();
var value = $(this).attr('href');
$('p').html("<p>" + value + "</p>");
$('source').attr("src", value);
// document.getElementsByTagName("audio")[0].load(); // pure JS approach
$('audio')[0].load(); // to preload the audio from the new source
$('audio')[0].play(); // to play the audio immediately
});
你这里有什么:
$('p').html("<p>"+value+"</p>");
$('source').html("<source[scr$="+value+"</source>");
不是像您期望的那样替换标签。它将 html 插入 现有元素。
仅更改属性:
$('p').html(value);
$('source').attr("src", value);
另请注意 src/scr 错别字。
我需要从 link 中获取 href 的值,并将该值放入源选择器的 scr。
<source src="HERE should be value" type="audio/mpeg">
我的代码
<div id="music">
<a href="horse.mp3">taken</a>
</div>
<audio controls>
<source src="1.mp3" type="audio/mpeg">
</audio>
<script>
$(document).ready(function(){
$('#music a').click(function(){
event.preventDefault();
var value = $(this).attr('href');
$('p').html("<p>"+value+"</p>");
$('source').html("<source[scr$="+value+"</source>");
});
});
</script>
目的 1.mp3 应该与 hourse.mp3 交换
我的代码不起作用,scr 的值没有改变 有什么想法吗?
直接设置src
属性:
$('source').attr("src", value);
要预加载来自新源的音频,请使用 audio|video.load() 函数:
$('#music a').click(function(){
event.preventDefault();
var value = $(this).attr('href');
$('p').html("<p>" + value + "</p>");
$('source').attr("src", value);
// document.getElementsByTagName("audio")[0].load(); // pure JS approach
$('audio')[0].load(); // to preload the audio from the new source
$('audio')[0].play(); // to play the audio immediately
});
你这里有什么:
$('p').html("<p>"+value+"</p>");
$('source').html("<source[scr$="+value+"</source>");
不是像您期望的那样替换标签。它将 html 插入 现有元素。
仅更改属性:
$('p').html(value);
$('source').attr("src", value);
另请注意 src/scr 错别字。