js点击按钮实现带遮罩层的弹出视频效果


Posted in Javascript onDecember 19, 2015

本文实例讲解了js点击按钮实现带遮罩层的弹出视频效果,涉及到css以及JavaScript,分享给大家供大家参考,具体内容如下

最终显示效果:点击红色按钮,会有视屏弹出 并带有遮罩层

js点击按钮实现带遮罩层的弹出视频效果

点击黄色区域可以关闭视频 并回到最初的状态。

js点击按钮实现带遮罩层的弹出视频效果

页面主要代码:main中主要包含一个a,控制显示的按钮。设置有id值。

<div class="main">
  <a href="javascript:;" class="video" id="video"></a>
</div>

以下代码就是用来控制视频的显示效果,.video-btn 包含了视频显示区域以及右边黄色关闭按钮(虽然黄色关闭按钮有点丑)。

id="shadow"用来控制遮罩层。主要是对各元素设置id的值  后面js就可以方便的调用各元素。

<div class="video-btn" id="video-btn">
   <div class="video-area" id="video-area"></div>
   <a class="video-shut" id="video-shut">x</a>
 </div>
 <div id="shadow"></div>

下面来看一下有关css

首先设置video-btn区域。

.video-btn{
      position: absolute;
      width:600px;
      height: 300px;
      background:black;
      top:50%;
      left: 50%;
      margin-top: -150px;
      margin-left:-300px;
      display: none;
      z-index: 101;
    }
 .video-area{
      float:left;
      width:500px;
      height: 300px;
      background:red;
    }
.video-shut{
      height:100px;
      width:100px;
      font-size:40px;
      color:pink;
      float:left;
      text-align: center;
      /*line-height: 50px;*/
      background: yellow;
      display: block;
      padding-top:30px;
    }

然后设置遮罩层的css

#shadow{
      position: absolute;
      opacity: 0.5;
      filter:alpha(opacity=50);
      bottom:0;
      left: 0;
      right: 0;
      top: 0;
      background:black;
      z-index: 100;
      display: none;
    }

重点1:此处一定把两个div设为绝对定位,让其脱离文档流。

重点2:遮罩层要设置bottom,left,right,top值为0 这样遮罩层就可以平铺整个屏幕了。

重点3:一定要把这两个div设为display:none。让用户一开始是看不到这两个div ,否则一进去就看到这两个会很丑。

重点4:要设置z-index的值,黄色按钮和显示视频那个div的优先级一定要比遮罩层的优先级大,不然点击不了。

现在开始js:前面五个获取id赋值。然后在点击黄色按钮时响应事件。

点击事件1:将视频所在的div设置display:block。将遮罩层所在div设置display:block。 同时,视屏div内显示土豆视频。  此链接为土豆网的分享链接。

点击事件2:在点击黄色x按钮时,应该将这两个div隐藏起来。即设置两个div的display:none。

<script>
  var obtn=document.getElementById('video');
  var ovideo=document.getElementById('video-btn');
  var oatn=document.getElementById('video-area');
  var oshut=document.getElementById('video-shut');
  var oshadow=document.getElementById('shadow');
  obtn.onclick=function () {
    ovideo.style.display='block';
    oshadow.style.display='block';
    oatn.innerHTML='<embed src="http://www.tudou.com/v/Bs_lZPxcoRs/&rpid=818231113&autoPlay=true&resourceId=818231113_04_05_99/v.swf" allowFullScreen="true" quality="high" width="500" height="300" align="middle" allowScriptAccess="always" flashvars ="isAutoPlay=true" type="application/x-shockwave-flash"></embed>';
  }
  oshut.onclick= function () {
    ovideo.style.display='none';
    oshadow.style.display='none';
  }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
Javascript Tab 导航插件 (23个)
Jun 11 Javascript
javascript function调用时的参数检测常用办法
Feb 26 Javascript
浅析jQuery的链式调用之each函数
Dec 03 Javascript
原生js ActiveXObject获取execl里面的值
Nov 01 Javascript
js showModalDialog弹出窗口实例详解
Jan 07 Javascript
微信企业号开发之微信考勤Cookies的使用
Sep 11 Javascript
javascript日期比较方法实例分析
Jun 17 Javascript
jQuery事件委托之Safari
Jul 05 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
Mar 30 Javascript
vue.js学习之UI组件开发教程
Jul 03 Javascript
vue-cli2打包前和打包后的css前缀不一致的问题解决
Aug 24 Javascript
JavaScript实现随机点名器
Mar 25 Javascript
js获取本机操作系统类型的两种方法
Dec 19 #Javascript
javascript精确统计网站访问量实例代码
Dec 19 #Javascript
js实现图片轮播效果
Dec 19 #Javascript
js实现图片上传并正常显示
Dec 19 #Javascript
thinkphp实现无限分类(使用递归)
Dec 19 #Javascript
15个常用的jquery代码片段
Dec 19 #Javascript
js实现滚动条滚动到页面底部继续加载
Dec 19 #Javascript
You might like
PHP array 的加法操作代码
2010/07/24 PHP
奉献出一个封装的curl函数 便于调用(抓数据专用)
2013/07/22 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
Zend Framework实现多文件上传功能实例
2016/03/21 PHP
Yii+upload实现AJAX上传图片的方法
2016/07/13 PHP
删除PHP数组中的重复元素的实现代码
2017/04/10 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
2017/08/03 PHP
在次封装easyui-Dialog插件实现代码
2010/11/14 Javascript
JS中的数组的sort方法使用示例
2014/01/22 Javascript
jQuery菜单插件superfish使用指南
2015/04/21 Javascript
JavaScript事件委托实例分析
2015/05/26 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
javascript原型继承工作原理和实例详解
2016/04/07 Javascript
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
javascript基础知识
2016/06/07 Javascript
vue深入解析之render function code详解
2017/07/18 Javascript
[02:41]DOTA2亚洲邀请赛小组赛第三日 赛事回顾
2015/02/01 DOTA
[44:41]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python3调用微信企业号API发送文本消息代码示例
2017/11/10 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
Python利用多线程同步锁实现多窗口订票系统(推荐)
2019/12/22 Python
python 读取.nii格式图像实例
2020/07/01 Python
世界上最大的高分辨率在线图片库:Alamy
2018/07/07 全球购物
建筑设计所实习生自我鉴定
2013/09/25 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
财务负责人任命书
2014/06/06 职场文书
党旗在我心中演讲稿
2014/09/15 职场文书
全国法院系统开展党的群众路线教育实践活动综述(全文)
2014/10/25 职场文书
2014年班务工作总结
2014/12/02 职场文书
研究生导师评语
2014/12/31 职场文书
自主招生自荐信范文
2015/03/04 职场文书
2015年党员岗位承诺书
2015/04/27 职场文书
首都博物馆观后感
2015/06/05 职场文书