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 相关文章推荐
js 分页全选或反选标识实现代码
Aug 09 Javascript
Javascript创建自定义对象 创建Object实例添加属性和方法
Jun 04 Javascript
YUI模块开发原理详解
Nov 18 Javascript
js实现日期级联效果
Jan 23 Javascript
javascript和jquery实现用户登录验证
May 04 Javascript
jQuery联动日历的实例解析
Dec 02 Javascript
vue-cli入门之项目结构分析
Apr 20 Javascript
使用 Node.js 开发资讯爬虫流程
Jan 07 Javascript
node解析修改nginx配置文件操作实例分析
Nov 06 Javascript
vue页面加载时的进度条功能(实例代码)
Jan 13 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
Jul 13 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
Nov 05 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 高性能书写
2010/12/11 PHP
PHP的变量总结 新手推荐
2011/04/18 PHP
那些年一起学习的PHP(三)
2012/03/22 PHP
php写入数据到CSV文件的方法
2015/03/14 PHP
PHP面向对象程序设计实例分析
2016/01/26 PHP
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
jquery操作checked属性以及disabled属性的多种方法
2014/06/20 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
基于JavaScript实现生成名片、链接等二维码
2015/09/20 Javascript
JavaScrip调试技巧之断点调试
2015/10/22 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
js仿腾讯QQ的web登陆界面
2016/08/19 Javascript
快速掌握jQuery插件WebUploader文件上传
2016/11/07 Javascript
微信小程序 地图(map)实例详解
2016/11/16 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
在vue中读取本地Json文件的方法
2018/09/06 Javascript
Jquery获取radio选中值实例总结
2019/01/17 jQuery
[01:14:34]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第一局
2016/02/28 DOTA
解析Python中的异常处理
2015/04/28 Python
解决python3中自定义wsgi函数,make_server函数报错的问题
2017/11/21 Python
PyQt5笔记之弹出窗口大全
2019/06/20 Python
PyTorch预训练的实现
2019/09/18 Python
简单了解如何封装自己的Python包
2020/07/08 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
Mytheresa美国官网:德国知名的女性奢侈品电商
2017/05/27 全球购物
新加坡领先的在线生活方式和杂货购物网站:EAMART
2019/04/02 全球购物
机械系大学毕业生推荐信
2013/11/27 职场文书
迅雷Cued工作心得体会
2014/01/27 职场文书
优秀民警事迹材料
2014/01/29 职场文书
我们的节日端午节活动方案
2014/03/02 职场文书
2016公务员年度考核评语
2015/12/01 职场文书
导游词书写之黄山
2019/08/06 职场文书
Python实现生活常识解答机器人
2021/06/28 Python
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python