js用类封装pop弹窗组件


Posted in Javascript onOctober 08, 2017

下面的弹出框组件使用的是类来封装的。一个弹窗组件通过new一个实例来生成。

下面直接上代码:

html结构:

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title></title>
  <style>
    /*基本的样式*/
    button{width: 1.6rem;height: 0.5rem;font-size: 0.3rem;line-height: 0.5rem;background: red;color: white;font-weight: bold}
    .hide{display: none;}
    .js-pop{
      width: 100%;
      height: 100%;
      z-index: 100;
      position: absolute;
      top:0;
      left: 0;
      font-size: 0.24rem;
    }
    .js-pop .mask{
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #000;
      opacity: 0.2;
    }
    .js-pop .content{
      position: fixed;
      top: 50%;
      left: 50%;
      width: 5.80rem;
      height: 4.81rem;
      margin: -2.405rem 0 0 -2.9rem;
      background: url("pop-bg.png") no-repeat;
      background-size: contain;
      color: #262626;
      text-align: center;
    }
    .js-pop .content .close{
      position: absolute;
      top: .25rem;
      right: .08rem;
      width: .54rem;
      height: .48rem;
      z-index: 4;
      cursor:pointer;
    }
    .js-pop .content .prize-title {
      height: .39rem;
      min-width: 1.77rem;
      margin: .28rem auto;
      line-height: 0.39rem;
      color: white;
      text-align: left;
      text-indent: 1rem;
    }
    .js-pop .content .prize-content {
      color: #a40000;
      font-size: .24rem;
      margin:0 0.1rem 0 0.49rem;
      line-height: 0.4rem;
      width: 5.2rem;
    }
  </style>
</head>
<body>
<button id="bb">显示弹窗</button>
<div class="js-pop js-prize-pop hide" id="popLogin">
  <div class="mask"></div>
  <div class="content">
    <div class="close"></div>
    <div class="prize-title">温馨提示</div>
    <div class="prize-content" style="margin-top: 1rem">
      登录后才能参与活动哦!
      <br/>
      自动登录跳转中......
    </div>
  </div>
</div>
<!--引入jquery-->
<script type="text/javascript" src="http://image.37wan.cn/common/js/jquery-1.9.1.min.js"></script>
<!--引入Pop组件-->
<script src="pop.js"></script>
<script>
//  rem代码
  var windowW = $(window).width();
  var ratio = windowW/640;
  $("html").css("fontSize",100*ratio+"px");
  $(window).on("resize",function(){
    var windowW = $(window).width();
    var ratio = windowW/640;
    $("html").css("fontSize",100*ratio+"px");
  });
//new一个Pop实例
  var popLogin=new Pop($("#popLogin"));
  $("#bb").on("click",function(){
    popLogin.open();
  });

</script>
</body>
</html>

pop.js代码:

//Pop的构造函数
  var Pop=function(wrap,option){
    var $this=this;
    var opt={
      closeCall:null
    };
    $.extend(opt,option);
    var mask=wrap.find(".mask");
    //特权方法:1、open();2、close();3、setPrize();4、setContent()控制弹窗内显示的内容
    this.open=function(){
      wrap.show();
      mask.show();
    };
    this.close=function(callbalck){
      wrap.hide();
      mask.hide();
      opt.closeCall&&callbalck();
    };
    this.setPrize=function(text){
      wrap.find(".js-prize").text(text);
    };
    this.setContent = function (text) {
      wrap.find(".js-content").text(text);
    };
    function events(){
      wrap.on("click",".close",function(e){
        e.stopPropagation();
        $this.close(opt.closeCall);
      });
    }
    events();
  };

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在b/s开发中经常用到的javaScript技术
Aug 23 Javascript
javascript 控制弹出窗口
Apr 10 Javascript
JS网络游戏-(模拟城市webgame)提供的一些例子下载
Oct 14 Javascript
禁止JQuery中的load方法装载IE缓存中文件的方法
Sep 11 Javascript
js实现在文本框光标处添加字符的方法介绍
Nov 24 Javascript
JS写的贪吃蛇游戏(个人练习)
Jul 08 Javascript
千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码
Dec 05 Javascript
简单封装js的dom查询实例代码
Jul 08 Javascript
JS动态计算移动端rem的解决方案
Oct 14 Javascript
详解vue2.0组件通信各种情况总结与实例分析
Mar 22 Javascript
vue过滤器用法实例分析
Mar 15 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
Jun 10 Javascript
利用js编写网页进度条效果
Oct 08 #Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
Oct 08 #Javascript
JS动态修改网页body的背景色实例代码
Oct 07 #Javascript
JS实现简单表格排序操作示例
Oct 07 #Javascript
javascript数组定义的几种方法
Oct 06 #Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 #Javascript
node.js中http模块和url模块的简单介绍
Oct 06 #Javascript
You might like
php调用c接口无错版介绍
2014/03/11 PHP
PHP实现十进制数字与二十六进制字母串相互转换操作示例
2018/08/10 PHP
JavaScript 动态改变图片大小
2009/06/11 Javascript
js 判断一个元素是否在页面中存在
2012/12/27 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
按下回车键指向下一个位置的一个函数代码
2014/03/10 Javascript
js如何调用qq互联api实现第三方登录
2014/03/28 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
微信小程序 ES6Promise.all批量上传文件实现代码
2017/04/14 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
2018/08/24 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
ES6 系列之 Generator 的自动执行的方法示例
2018/10/19 Javascript
validform表单验证的实现方法
2019/03/08 Javascript
js仿360开机效果
2019/12/26 Javascript
vue实现图片上传到后台
2020/06/29 Javascript
Python实现Const详解
2015/01/27 Python
Python列表(list)常用操作方法小结
2015/02/02 Python
Python中基础的socket编程实战攻略
2016/06/01 Python
python解析xml简单示例
2019/06/21 Python
PyTorch中Tensor的拼接与拆分的实现
2019/08/18 Python
python使用if语句实现一个猜拳游戏详解
2019/08/27 Python
Python超越函数积分运算以及绘图实现代码
2019/11/20 Python
python 实现单通道转3通道
2019/12/03 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
2019/12/10 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
Html5应用程序缓存(Cache manifest)
2018/06/04 HTML / CSS
英国鞋类及配饰零售商:Kurt Geiger
2017/02/04 全球购物
客服主管岗位职责
2013/12/13 职场文书
家长通知书家长评语
2014/04/17 职场文书
教师求职信范文
2014/05/24 职场文书
火锅店的活动方案
2014/08/15 职场文书
小学音乐课教学反思
2016/02/18 职场文书
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS