js控制网页中的视频和音频

简介: 网页中的视频和音频是两个很相像的标签元素,使用js对他们的控制和处理也是非常得相似。使用js控制这两个标签元素,几乎可以使用同样的函数和事件,但是为了清晰,下面还是给出了两者的详细方法如此,也方便查阅学习。

网页中的视频和音频是两个很相像的标签元素,使用js对他们的控制和处理也是非常得相似。
使用js控制这两个标签元素,几乎可以使用同样的函数和事件,但是为了清晰,下面还是给出了两者的详细方法
如此,也方便查阅学习。

一、使用js控制网页中的音频

1.在页面中引入<audio>标签

  • 如果对<audio>标签不熟悉的话,点击进行 W3school网站 进行学习。
<audio src="1.mp3" id="my-bgm" controls autoplay="autoplay" loop="loop"></audio>
  • 当我们使用Chrome测试以上代码的时候,发现虽然我们给 <audio> 标签添加了autoplay="autoplay"属性,但是音频还是不自动播放。这不是我们代码的问题,而是Chrome的问题。

  • 解决办法:在Chrome浏览器地址栏输入 chrome://flags/#autoplay-policy,然后将第一个选项 Autoplay policy 设置为 no user gesture is required 即可。

img_123e2ee35f91dba4f85e4b886c9ddb93.png

2.判断网页中的音频是否暂停

  • 使用如下代码,我们判断网页中的音频是否暂停。注意这里是使用paused,千万不要漏掉了 d
var bgm=document.getElementById('my-bgm');
// 如果音频是暂停,返回true
if(bgm.paused){
    console.log("音频现在是暂停状态");
}

3.使用js控制音频播放

  • 使用以下代码,控制网页中的音频播放。
var bgm=document.getElementById('my-bgm');
bgm.play();

4.使用js控制音频暂停

  • 使用以下代码,控制网页中的音频暂停。
var bgm=document.getElementById('my-bgm');
bgm.pause();

5.判断网页中的音频是否静音

var bgm=document.getElementById('my-bgm');
// 如果音频是静音,返回true
if(bgm.muted){
    console.log("音频现在是静音状态");
}

6.使用js控制音频的静音

var bgm = document.getElementById('my-bgm');
bgm.muted = true;       // 使音频静音
bgm.muted = false;      // 取消音频静音          

7.音频的 onended() 事件

  • 详细学习onended 事件,点击进入 菜鸟教程- onended 事件

  • 使用 onended() 事件,我们可以控制音频在播放完毕之后的动作。

  • 但是,如果<audio> 标签带有loop="loop"属性,这个事件是不能执行的。

var bgm = document.getElementById('my-bgm');
bgm.onended=function(){
    alert("音频播放完毕,可以继续后面的动作!");
}

// 或者这样子写
var bgm = document.getElementById('my-bgm');
bgm.addEventListener('ended',function(){
    alert("音频播放完毕,可以继续后面的动作!");
});

二、使用js控制网页中的视频

1.在页面中引入<video>标签

<video src="1.mp4" id="my-video" controls autoplay="autoplay"></video>
  • 如果对<video>标签不熟悉的话,点击进行 W3school网站 进行学习。

  • 当我们使用<video>标签正确引入视频,但是在网页上只能听到声音,不能看到画面,不是因为我们代码的错误,是因为视频的问题。是因为视频格式的问题,或者是因为我们的音频太短了,换一个视频试一试,但是如果是在移动端观看的时候,是没有这个问题的。

2.判断网页中视频是否暂停

 var my_video = document.getElementById("my-video");
 
 // 如果视频是暂停的,返回true
 // 如果视频是播放的,返回false
 console.log(my_video.paused);

3.使用js控制视频播放

var my_video = document.getElementById("my-video");
my_video.play();

4.使用js控制视频暂停

var my_video = document.getElementById("my-video");
my_video.pause();

5.判断网页中的视频是否静音

var my_video = document.getElementById("my-video");
// 如果视频是静音状态,返回true;否则返回true
console.log(my_video.muted);

6.使用js控制视频的静音

var my_video = document.getElementById("my-video");
my_video.muted = true;       // 使视频静音
my_video.muted = false;      // 取消视频静音

7.视频的 onended() 事件

  • 详细学习onended 事件,点击进入 菜鸟教程- onended 事件

  • 使用 onended() 事件,我们可以控制视频在播放完毕之后的动作。

  • 但是,如果<video> 标签带有loop="loop"属性,这个事件是不能执行的。

var my_video = document.getElementById("my-video");
my_video.onended=function(){
    alert("视频播放完毕,可以继续后面的动作!");
}

// 或者这样子写
var my_video = document.getElementById("my-video");
my_video.addEventListener('ended',function(){
    alert("视频播放完毕,可以继续后面的动作!");
});
相关文章
|
3月前
|
存储 JavaScript 前端开发
使用JavaScript构建动态交互式网页:从基础到实践
【10月更文挑战第12天】使用JavaScript构建动态交互式网页:从基础到实践
204 1
|
4月前
|
编解码 前端开发 JavaScript
javascript检测网页缩放演示代码
javascript检测网页缩放演示代码
|
4月前
|
Web App开发 JavaScript 前端开发
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
|
2月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
66 5
|
2月前
|
JavaScript
js实现简洁实用的网页计算器功能源码
这是一款使用js实现简洁实用的网页计算器功能源码。可实现比较基本的加减乘除四则运算功能,界面简洁实用,是一款比较基本的js运算功能源码。该源码可兼容目前最新的各类主流浏览器。
35 2
|
3月前
|
存储 JavaScript 前端开发
【JavaScript】网页交互的灵魂舞者
本文介绍了 JavaScript 的三种引入方式(行内、内部、外部)和基础语法,包括变量、数据类型、运算符、数组、函数和对象等内容。同时,文章还详细讲解了 jQuery 的基本语法和常用方法,如 `text()`、`html()`、`val()`、`attr()` 和 `css()` 等,以及如何插入和删除元素。通过示例代码和图解,帮助读者更好地理解和应用这些知识。
44 1
【JavaScript】网页交互的灵魂舞者
用CSS+JavaScript打造网页中的选项卡
用CSS+JavaScript打造网页中的选项卡
|
4月前
|
Web App开发 前端开发 JavaScript
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
|
3月前
|
Web App开发 缓存 前端开发
前端RAG:使用Transformers.js手搓纯网页版RAG(二)- 基于qwen1.5-0.5B
本文继续探讨了RAG的后半部分,通过在浏览器中运行qwen1.5-0.5B模型实现了增强搜索全流程。然而,由于浏览器与模型性能限制,该方案更适合研究、离线及高隐私场景。文章提供了完整的前端代码,让读者能够动手尝试。此外,详细介绍了代码框架、知识库准备、模型初始化及问答实现等步骤,并展示了实际运行效果。受限于当前技术,除非在离线或高隐私环境下,网页大模型的应用仍需进一步优化。
148 0
|
3月前
|
存储 自然语言处理 文字识别
纯前端RAG:使用Transformers.js实现纯网页版RAG(一)
本文将分两部分教大家如何在网页中实现一个RAG系统,本文聚焦于深度搜索功能。通过浏览器端本地执行模型,可实现文本相似度计算和问答匹配,无需依赖服务器。RAG搜索基于高维向量空间,即使不完全匹配也能找到意义相近的结果。文中详细介绍了如何构建知识库、初始化配置、向量存储及相似度计算,并展示了实际应用效果。适用于列表搜索、功能导航、文档查询及表单填写等多种场景。
349 0