Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery onclick更改元素的src_Javascript_Jquery_Src - Fatal编程技术网

Javascript 如何使用jquery onclick更改元素的src

Javascript 如何使用jquery onclick更改元素的src,javascript,jquery,src,Javascript,Jquery,Src,我有一个视频播放器,我想在上面的一些锚当点击他们,视频的src改变。我该怎么做?按首选项,无需页面刷新 所以它应该是这样的: <a href="#">Video 1</a> <!-- load video1.mp4 --> <a href="#">Video 2</a> <!-- load video2.mp4 --> <a href="#">Video 3</a> <!-- load vide

我有一个视频播放器,我想在上面的一些锚当点击他们,视频的src改变。我该怎么做?按首选项,无需页面刷新

所以它应该是这样的:

<a href="#">Video 1</a> <!-- load video1.mp4 -->
<a href="#">Video 2</a> <!-- load video2.mp4 -->
<a href="#">Video 3</a> <!-- load video3.mp4 -->

<video class="myVideo" controls preload="auto" width="600" height="350" >
  <source src="video1.mp4" type="video/mp4" /> <!--this src should be changed by onclick-->
</video>

可以使用
数据()

  • 您可以使用正确的视频url向链接添加
    数据属性
  • 将事件绑定到链接
  • 单击链接时,阻止默认行为
$(文档)。在('click','a',函数(e){
e、 预防默认值();
var source=$(this.data('source');
log('changing to“'+source+'”);
$('.myVideo source').attr('src',source);
$('.myVideo').load();
});

将数据属性添加到标签和视频中。那你就能做到了

<a class="videoLink" href="#" data-url="video1.mp4" >Video 1</a> <!-- load video1.mp4 -->
注意:

某些浏览器在更改
src
后可能不会更改视频。在这种情况下,需要对它们调用load函数

$('#myVideo').load(); 

$(文档).ready(函数(){
$(“a”)。单击(功能(e){
e、 preventDefault();//防止的默认行为

使用
数据
函数来获取信息,而不是
属性
函数。在这种情况下,你真的不需要这样做。你的方法工作得很好,但是,使用
数据
函数会更加新奇和干净。我可以在源代码中看到src在单击锚定时发生的变化,但视频仍在播放video1.mp4i可以看到单击“锚定”时,源中的src发生变化,但视频仍在播放video1.mp4这将在单击并播放时加载视频
$('#myVideo').load();