阅读模式:

jquery+video实现点击播弹窗放视频功能

查看:18322  回复:9  类型:  来源:php自学网  标签 html5 jquery

        html5 jquery+video实现视频列表点击某个视频播放视频功能,播放视频弹出窗口进行播放,关闭窗口关闭视频。

        实现过程:当点击某个视频的时候把已经用javascript拼接好的video标签并带视频路径和视频缩略图信息的dom写入到指定的dom中,实现列表点击播放的功能。注意:这里只支持mp4类型的视频播放,不支持低版本的浏览器。

全部代码:

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>jquery+video实现点击播弹窗放视频功能</title>
    <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
 <!--[if lt IE 9]>
      <script src="https://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
 <style type="text/css">
 .videolist { position:relative; float:left; width:500px; height:300px; margin-right:50px; margin-top:15px; margin-bottom:30px; }
     .videolist:hover{ cursor: pointer; }
     .videoed { display:none; width:50px; height:50px; position: absolute; left:45%; top:45%; z-index:99; border-radius:100%; }
     .videos{ display:none; border:10px solid green; position:fixed; left:50%; top:50%; margin-left:-320px; margin-top:-210px; z-index:100; width:660px; height:380px; }
     .vclose { position:absolute;right:1%; top:1%; border-radius:100%; cursor: pointer; }
   </style>
  </head>
  <body>
   <div class="video">
      <div class="container">
         <div class="videolist" vpath="1.png" ipath="1.mp4">
            <div class="vtit">视频一</div>
            <img src="1.png" width="540px" height="300px" />
            <div class="vtime">2018-06-22</div>
            <img src="play.jpg" class="videoed"/>
         </div>
         <div class="videolist" vpath="1.png" ipath="1.mp4">
            <div class="vtit">视频二</div>
            <img src="1.png" width="540px" height="300px" />
            <div class="vtime">2018-06-23</div>
            <img src="play.jpg" class="videoed"/>
         </div>
         <div class="videolist" vpath="1.png" ipath="1.mp4">
            <div class="vtit">视频三</div>
            <img src="1.png" width="540px" height="300px" />
            <div class="vtime">2018-06-24</div>
            <img src="play.jpg" class="videoed"/>
         </div>
         <div class="videolist" vpath="1.png" ipath="1.mp4">
            <div class="vtit">视频四</div>
            <img src="1.png" width="540px" height="300px" />
            <div class="vtime">2018-06-25</div>
            <img src="play.jpg" class="videoed"/>
         </div>
         <div class="videos"></div>
      </div>
   </div>

    <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
    <script>
         $('.videolist').each(function(){ //遍历视频列表
             $(this).hover(function(){ //鼠标移上来后显示播放按钮
                 $(this).find('.videoed').show();
             },function(){
                 $(this).find('.videoed').hide();
             });
             $(this).click(function(){ //这个视频被点击后执行
                 var img = $(this).attr('vpath');//获取视频预览图
                 var video = $(this).attr('ipath');//获取视频路径
                 $('.videos').html("<video id=\"video\" poster='"+img+"' src='"+video+"' preload=\"auto\" controls=\"controls\" autoplay=\"autoplay\"></video><img onClick=\"close1()\" class=\"vclose\" src=\"close.jpg\" width=\"25\" height=\"25\"/>");
                 $('.videos').show();
             });
         });
        
         function close1(){
             var v = document.getElementById('video');//获取视频节点
             $('.videos').hide();//点击关闭按钮关闭暂停视频
             v.pause();
             $('.videos').html();
         }
    </script>
  </body>
</html>

功能截图:

jquery + html5 video 视频播放功能.png

html5 jquery+video实现点击播弹窗放视频功能,打包下载地址:

html5 video play code.rar

分享到:
3 6

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

最新评论:
你我一起  发表于 2018-06-15 11:35:53  中国广东广州电信
沙发
不行。 回复
站长 2018-06-22 19:51 中国广东深圳电信
看demo代码 回复
你我一起  发表于 2018-06-15 11:38:10  中国广东广州电信
板凳
把video写入容器播放,这里报错 回复
你我一起  发表于 2018-06-15 11:40:08  中国广东广州电信
地板
你能发一个完整版的给我吗, 回复
站长 2018-06-22 19:50 中国广东深圳电信
已经把demo更新在文章中,请下载。 回复
丑不拉几香菇头  发表于 2019-07-26 09:27:04  中国广东省广州市南沙区
4楼
可以播放本地視頻嗎,我好像播放不了 回复
站长 2019-08-02 18:16 中国广东省深圳市南山区
不支持低版本的浏览器哦,是报什么错呢? 回复
北地  发表于 2019-11-23 23:40:12 
5楼
我用电脑版谷歌浏览器可以播放视频,手机版用苹果自带浏览器和Uc浏览器都不能播放呢? 回复
站长 2019-11-26 14:02 中国广东省深圳市南山区
部分浏览器需要做格外的video标签的兼容 回复
回复:[主题]
表情:
 提交评论
清空

发布评论:


登录:
  表情:
评论话题
推荐阅读:
php打印九九乘法表   阅读:12275centos7.3安装mongodb3.6   阅读:8508linux时间戳有趣的情人节秒1234567890   阅读:6188霍金24岁博士毕业论文在线预览   阅读:6374centos 7搭建zabbix3.4   阅读:7384mysql共享锁和排他锁详解   阅读:8314php打印三角形   阅读:12455爱编程,也爱健康   阅读:5056“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4776javascript获取两个日期间的所有日期   阅读:7626linux时间戳有趣的情人节秒1234567890   阅读:6188关于PHP程序员技术职业生涯规划   阅读:3563centos7中颁发CA证书并开启web https   阅读:9228linux教程,鸟哥私房菜(pdf全集)   阅读:11202用php从1乘到100的值   阅读:7086centos 7 忘记root密码   阅读:5615把php session 会话保存到redis   阅读:8198mysql的四种索引类型   阅读:24063一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:136074mysql数据库性能的基本优化   阅读:5088面试都会问你为什么你从上一家公司离职的真实意思   阅读:12309nginx编译安装后对nginx进行平滑升级   阅读:7550centos 7 开启网络   阅读:8071phpexcel 超简单从数据库一键导出数据到excel教程   阅读:8137centos 7 安装 php-7.1.3   阅读:21851php打印三角形   阅读:12455shell发送邮件脚本   阅读:9783栈和堆的区别   阅读:5752linux时间戳有趣的情人节秒1234567890   阅读:6188php 生成图片,给图片加水印   阅读:7235给 centos 7 安装桌面环境   阅读:17813php swoole搭建简单的聊天室   阅读:5443mysql5.7主从同步配置   阅读:7504mysql的四种索引类型   阅读:24063解决 nginx 413 request entity too large   阅读:5162php+redis实现消息队列   阅读:16563ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:10679移动端自适应rem原理   阅读:10431php打印九九乘法表   阅读:12275javascript获取两个日期间的所有日期   阅读:7626mysql的四种索引类型   阅读:24063企业让你去面试,可能不是真的招人   阅读:6610html5 离线缓存的使用   阅读:4945nginx编译安装后对nginx进行平滑升级   阅读:7550php打印九九加法表   阅读:12095web性能测试工具ab的测试方法   阅读:5328比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:6004mysql 为什么添加索引可以提高访问速度   阅读:6839php 使用 smtp.php 类在线发送邮件功能   阅读:6513什么是天使轮?什么是A轮融资?B轮融资?   阅读:5884