基于React怎样实现视频全屏按钮,代码是什么
Admin 2022-12-07 群英技术资讯 1003 次浏览
这篇文章主要介绍了“基于React怎样实现视频全屏按钮,代码是什么”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇基于React怎样实现视频全屏按钮,代码是什么文章都会有所收获,下面我们一起来看看吧。React自定义视频全屏按钮,实现全屏功能。
绘制全屏按钮,并绑定点击事件:
render() {
return (
<div className={'fullfrequency'}>
<img src={require("./全屏.png") } id="picts" onClick={this.fullScreen} alt="" title="全屏"/>
</div>
);
}
定义全屏标识变量
this.state = {
isFullScreen: false//初始为未开启全屏
}
编写fullScreen点击事件函数:
fullScreen = () => {
var picts = document.getElementById("picts");
if (!this.state.isFullScreen) {
this.requestFullScreen();
picts.setAttribute("src",require("./取消全屏.png"));//全屏按钮变换
picts.setAttribute("title","退出全屏");
} else {
this.exitFullscreen();
picts.setAttribute("src",require("./全屏.png"));//全屏按钮变换
picts.setAttribute("title","全屏");
}
};
编写requestFullScreen函数
requestFullScreen = () => {
var de = document.documentElement;
if (de.requestFullscreen) {
de.requestFullscreen();
} else if (de.mozRequestFullScreen) {
de.mozRequestFullScreen();
} else if (de.webkitRequestFullScreen) {
de.webkitRequestFullScreen();
}
};
编写exitFullscreen函数
exitFullscreen = () => {
var de = document;
if (de.exitFullscreen) {
de.exitFullscreen();
} else if (de.mozCancelFullScreen) {
de.mozCancelFullScreen();
} else if (de.webkitCancelFullScreen) {
de.webkitCancelFullScreen();
}
};
编写监听fullscreen变化事件
watchFullScreen = () => {
const _self = this;
document.addEventListener(
"webkitfullscreenchange",
function() {
_self.setState({
isFullScreen: document.webkitIsFullScreen
});
},
false
);
document.addEventListener(
"fullscreenchange",
function() {
_self.setState({
isFullScreen: document.fullscreen
});
},
false
);
document.addEventListener(
"mozfullscreenchange",
function() {
_self.setState({
isFullScreen: document.mozFullScreen
});
},
false
);
};
在componentDidMount钩子上挂在监听
componentDidMount() {
this.watchFullScreen();
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。为了帮助大家熟悉和理解vuex,这篇文章就给大家介绍关于vuex的使用步骤,下面一起跟随小编来学习吧。
本文我们主要了解怎样用JS来监测元素位置在不在视口内,这里会给大家分享两个方法,实现代码如下,有这方面学习需要的朋友可以参考,那么接下来就跟随小编来学习一下吧。
JS实现简单留言板功能 本文实例为大家分享了JS实现简单留言板的具体代码,供大家参考,具体内容如下 言归正传,之前的案例相信大家都已经完全弄清楚了,还记得我们之前统计字数的那个案例吗?忘记的可以再去翻阅一下,今天就是在这个方法的基础上,把它变成一个留言版,就像我们之前的评论一样,是不是很期待呢?先来看一下效果图 输入昵称,选择头像,输入留言,点击广播就能够在下面显示出来了,是不是很nice呢,具体怎么实现的呢,我们来看代码 <!DOCTYPE html> <html lang="en&quo ...
对于新手来说,可能vue的生命周期会比较难理解,下面小编就给大家介绍生命周期的概念、vue生命周期函数等等,有这方面学习需要的朋友可以了解一下。
本文给大家分享的是React项目中出现事件节流效果失效的解决方法,本文会介绍React事件节流失效的原因及两种解决方式,有需要的朋友可以参考了解看看,下面我们就来看一下示例吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008