js实现上下左右弹框划出效果


Posted in Javascript onMarch 08, 2017

效果图:

js实现上下左右弹框划出效果

图(1)初始图

js实现上下左右弹框划出效果

图(2)点击“从右侧划出”

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">
 <title>上下左右弹框划出效果</title>
 <style>
   /*css document*/
body,div,ol,ul,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,p,form,fieldset,legend,input,button,aside{ padding: 0; margin: 0; -webkit-tap-highlight-color:rgba(255,255,255,0);}
   body { font-family: "Microsoft YaHei"; }
   .btn button {
 display: block;
 width: 240px; 
 line-height: 30px;
 margin: 20px auto;
 background-color: #cd0000;
 color: #fff;
 text-align: center;
 outline: none;
 border: none;
 cursor: pointer;
 font-family: "Microsoft YaHei";
}
.aside,
.aside-overlay {
 position: fixed;
 top: 0;
 right: 0;
 left: 0;
 bottom: 0;
}
.aside {
 -webkit-transition: visibility .25s;
 transition: visibility .25s;
 z-index: 3;
 visibility: hidden;
 overflow: hidden;
}
.aside > div { text-align: center; }
.aside.active {
 -webkit-transition: none;
 transition: none;
 visibility: visible;
}
.aside-overlay {
 background-color: rgb(0,0,0);
 opacity: 0;
 -webkit-transition: opacity .25s;
 transition: opacity .25s;
}
.active > .aside-overlay {
 opacity: .6;
}
.rightContent {
 position: absolute;
 bottom: 0;
 right: 0;
 top: 0;
 left: 40px;
 background:#fff;
 -webkit-transition: transform .15s;
 transition: transform .15s;
 -webkit-transform:translateX(100%); 
 transform:translateX(100%); 
}
.active > .rightContent {
 -webkit-transform:translateX(0%); 
 transform:translateX(0%); 
}
.leftContent {
 position: absolute;
 bottom: 0;
 right: 40px;
 top: 0;
 left: 0;
 background:#fff;
 -webkit-transition: transform .15s;
 transition: transform .15s;
 -webkit-transform:translateX(-100%); 
 transform:translateX(-100%); 
}
.active > .leftContent {
 -webkit-transform:translateX(0%); 
 transform:translateX(0%); 
}
.topContent {
 position: absolute;
 bottom: 40px;
 right: 40px;
 top: 0;
 left: 40px;
 background:#fff;
 -webkit-transition: transform .15s,top .15s;
 transition: transform .15s;
 -webkit-transform:translateY(-100%); 
 transform:translateY(-100%); 
}
.active > .topContent {
 top: 40px;
 -webkit-transform:translateY(0%); 
 transform:translateY(0%); 
}
.botContent {
 position: absolute;
 bottom: 0;
 right: 40px;
 top: 40px;
 left: 40px;
 background:#fff;
 -webkit-transition: transform .15s,bottom .15s;
 transition: transform .15s;
 -webkit-transform:translateY(100%); 
 transform:translateY(100%); 
}
.active > .botContent {
 bottom: 40px;
 -webkit-transform:translateY(0%); 
 transform:translateY(0%); 
}
  </style>
 </head>
 <body>
 <!-- 按钮 -->
 <div class="btn">
 <button id="rightBtn">从右侧划出</button>
 <button id="leftBtn">从左侧划出</button>
 <button id="topBtn">从上面划下</button>
 <button id="botBtn">从下面划上</button>
 </div>
 <!-- 弹出层 -->
 <aside id="aside" class="aside">
 <i class="aside-overlay hideAside"></i>
 <div class="rightContent">
 右侧划出
 </div>
 <div class="leftContent">
 左侧划出
 </div>
 <div class="topContent">
 从上面划下
 </div>
 <div class="botContent">
 从上面划下
 </div>
 </aside>
 <script type="text/javascript" src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
 <script type="text/javascript">
 $(function(){
 var rightBtn = $('#rightBtn'),leftBtn = $('#leftBtn'),topBtn = $('#topBtn'),botBtn = $('#botBtn');
 var oAside = $('#aside');
 rightBtn.on("click",function(){
 $('.leftContent').hide();
 $('.topContent').hide();
 $('.botContent').hide();
 $('.rightContent').show();
 oAside.addClass('active');
 });
 leftBtn.on("click",function(){
 $('.rightContent').hide();
 $('.topContent').hide();
 $('.botContent').hide();
 $('.leftContent').show();
 oAside.addClass('active');
 });
 topBtn.on("click",function(){
 $('.rightContent').hide();
 $('.leftContent').hide();
 $('.botContent').hide();
 $('.topContent').show();
 oAside.addClass('active');
 });
 botBtn.on("click",function(){
 $('.rightContent').hide();
 $('.leftContent').hide();
 $('.topContent').hide();
 $('.botContent').show();
 oAside.addClass('active');
 });
 $('.hideAside').on("click",function(){
 oAside.removeClass('active');
 });
 })
 </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
js滚动条多种样式,推荐
Feb 05 Javascript
JavaScript高级程序设计 阅读笔记(二十一) JavaScript中的XML
Sep 14 Javascript
js综合应用实例简单的表格统计
Sep 03 Javascript
IE6浏览器中window.location.href无效的解决方法
Nov 20 Javascript
jquery实现左右无缝轮播图
Jul 31 Javascript
js获取Get值的方法
Sep 29 Javascript
微信小程序 获取相册照片实例详解
Nov 16 Javascript
vue-router跳转页面的方法
Feb 09 Javascript
详解Node.js 命令行程序开发教程
Jun 07 Javascript
JavaScript简单实现关键字文本搜索高亮显示功能示例
Jul 25 Javascript
微信小程序实现手势滑动效果
Aug 26 Javascript
详解如何使用Node.js实现热重载页面
May 06 Javascript
浅谈JavaScript正则表达式-非捕获性分组
Mar 08 #Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
Mar 08 #Javascript
原生js实现瀑布流布局
Mar 08 #Javascript
js仿拉勾网首页穿墙广告效果
Mar 08 #Javascript
JavaScript中的工厂函数(推荐)
Mar 08 #Javascript
老生常谈js中0到底是 true 还是 false
Mar 08 #Javascript
jQuery插件zTree实现更新根节点中第i个节点名称的方法示例
Mar 08 #Javascript
You might like
PHP 引用文件技巧
2010/03/02 PHP
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
PHP Session 变量的使用方法详解与实例代码
2013/09/11 PHP
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
codeigniter数据库操作函数汇总
2014/06/12 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值
2010/06/28 Javascript
瀑布流布局并自动加载实现代码
2013/03/12 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
2014/06/17 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
jquery点赞功能实现代码 点个赞吧!
2020/05/29 jQuery
Vuex和前端缓存的整合策略详解
2017/05/09 Javascript
three.js实现炫酷的全景3D重力感应
2018/12/30 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
vue treeselect获取当前选中项的label实例
2020/08/31 Javascript
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
Python设计模式中单例模式的实现及在Tornado中的应用
2016/03/02 Python
Python 获取当前所在目录的方法详解
2017/08/02 Python
Python使用xlwt模块操作Excel的方法详解
2018/03/27 Python
python爱心表白 每天都是浪漫七夕!
2018/08/18 Python
django解决订单并发问题【推荐】
2019/07/31 Python
python 伯努利分布详解
2020/02/25 Python
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
Chantelle仙黛尔内衣美国官网:法国第一品牌内衣
2018/07/26 全球购物
eBay瑞士购物网站:eBay.ch
2018/12/24 全球购物
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
医院见习报告范文
2014/11/03 职场文书
升学宴学生答谢词
2015/01/05 职场文书
写给医生的感谢信
2015/01/22 职场文书
房屋租赁意向书范本
2015/05/09 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS