阅读模式:

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

查看:18366  回复: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生成二维码   阅读:7802centos7开启交换内存   阅读:12205mysql数据库性能的基本优化   阅读:5125web项目高并发量网站解决方案   阅读:5300最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34023面试的时候和你谈理想,是理想or入坑?   阅读:12011人性漫画:打工与创业的残酷区别   阅读:5681解决 nginx 413 request entity too large   阅读:5210Nginx 配置文件详解   阅读:5849纯干货,程序员面试的超实用技巧   阅读:4961php冒泡排序法   阅读:15763linux php7编译安装mongodb扩展   阅读:9960爱编程,也爱健康   阅读:5098linux教程,鸟哥私房菜(pdf全集)   阅读:11251php 获取当前前后年、月、星期、日、时分秒的时间   阅读:7628php+redis实现消息队列   阅读:16657phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13274移动端js触摸touch详解(附带案例源码)   阅读:18262centos7.3安装mongodb3.6   阅读:8551shell发送邮件脚本   阅读:9853centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10419php打印三角形   阅读:12548javascript对cookie操作详细代码函数   阅读:6027把php session 会话保存到redis   阅读:8245给 centos 7 安装桌面环境   阅读:17861小米手机端商城rem适配原理   阅读:7468最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34023Nginx 配置文件详解   阅读:5849phpexcel 超简单从数据库一键导出数据到excel教程   阅读:8198php 使用 smtp.php 类在线发送邮件功能   阅读:6550php 获取当前前后年、月、星期、日、时分秒的时间   阅读:7628php+redis实现消息队列   阅读:16657centos 7 安装 mysql-5.7   阅读:8465移动端js触摸touch详解(附带案例源码)   阅读:18262mysql5.7主从同步配置   阅读:7581十张GIF让你弄懂递归等概念   阅读:6950面试的时候和你谈理想,是理想or入坑?   阅读:12011mysql5.7主从同步配置   阅读:7581centos 7 安装 redis 3.2.9   阅读:7433php 生成图片,给图片加水印   阅读:7280十张GIF让你弄懂递归等概念   阅读:6950shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10120centos 7 安装 redis 3.2.9   阅读:7433php中地址引用&的真正理解-变量引用、函数引用、对象引用   阅读:6654shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10120linux top命令详解   阅读:10615php设置cookie为HttpOnly防止XSS攻击   阅读:14016mysql5.7主从同步中binlog同步模式详解   阅读:8948php 生成图片,给图片加水印   阅读:7280程序员找工作三要素(必看)   阅读:6395