html代码

<!DOCTYPE html>
<html>
<head>
     <title></title>
     <meta charset="utf-8">
     <script type="text/javascript" src="jquery.min.js"></script>
     <script type="text/javascript" src="dailog.js"></script>
     <link rel="stylesheet" type="text/css" href="icon.css">
     <script type="text/javascript">
     $(function(){

$.fn.mxDialog({
           targetId: 'dia-0',
           size:{
             diaW:400,
             diaH:300,
             back : '#fff'
           },
//          标题
           diaHead : {
               hClass : 'diahead',
               title : '顺丰优选欢迎您的到来',
               flag : 'true'
           },
//          bottom内容区域
           bomCon : {
               bomConClass : 'bomButton',
               flag : 'true'
           },
//          确定按钮
            diaSure: {
                 sClass : 'diasure',
                 sDataId : 'sure-0',
                 sTitle : '信息正确'
          },
//          取消按钮
          diaDelay: {
            dClass : 'diadelay',
            dDataId : 'delay-0',
            dTitle : '信息错误'
          },
//          内容区域
          diaContent :'diaContent'
      });

$("#sure-0").click(function(){
          $.fn.mxDialog({
              targetId : 'dia-1',
              size:{
                  diaW:200,
                  diaH:80,
                  back : '#dcdcdc'
              },
              diaClose : {
                  flag : 'flase'
              },
              bomCon : {
                  flag : 'flase'
              },
              diaContent :'sure',
//              控制弹窗的显示时间,时间可以自己定义
              diaFlag : {
                  flag : 'false',
                  time : '2000'
              },
              diafun:function(){
//                  点击确定按钮请求ajax
                  $.ajax({

type:'GET',
                      url:'ajax.html',
                      success:function(response,status,xhr) {
                          $('.sure').html(response);
                      },
                      error: function () {
                          $(".sure").html('获取数据失败');
                      }
                  })
              }
          })
      })

$("#delay-0").click(function(){
           $.fn.mxDialog({
               targetId : 'dia-2',
               size:{
                   diaW:400,
                   diaH:300
               },
               bomCon : {
                   bomConClass : 'bomButton',
                   flag : 'true'
               },
               diaContent :'disImg',
           })
      });
 })
     </script>
</head>
<body>
<div class="diaContent">
    <h1>请确认您的信息</h1>
    <table border="1" style="width:360px;margin:0 auto;border-collapse: collapse;margin-top: 20px;text-align: center">
        <thead>
            <tr>
                <th>姓名</th>
                <th>年龄</th>
                <th>学历</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>赵丽</td>
                <td>12</td>
                <td>小学</td>
            </tr>
            <tr>
                <td>小米</td>
                <td>22</td>
                <td>大学</td>
            </tr>
            <tr>
                <td>小李</td>
                <td>22</td>
                <td>大学</td>
            </tr>
            <tr>
                <td>赵丽</td>
                <td>12</td>
                <td>小学</td>
            </tr>
            <tr>
                <td>小米</td>
                <td>22</td>
                <td>大学</td>
            </tr>
            <tr>
                <td>小李</td>
                <td>22</td>
                <td>大学</td>
            </tr>
            <tr>
                <td>赵丽</td>
                <td>12</td>
                <td>小学</td>
            </tr>
            <tr>
                <td>小米</td>
                <td>22</td>
                <td>大学</td>
            </tr>
            <tr>
                <td>小李</td>
                <td>22</td>
                <td>大学</td>
            </tr>
        </tbody>
    </table>
</div>

<!--第二个弹框-->
<div class="disImg">
    <div class="disImg-all">
        <div class="disImg-all-top">
            <img src="">
        </div>
    </div>
</div>
<div class="sure" style="display: none;">确定取消</div>
</body>
</html>

css代码

.icon-clear{
     background:url('icons/clear.png') no-repeat center center;
}
*{margin:0px;padding: 0px;}
.mx_dialog {position: fixed;background: #fff;border-radius: 5px;top:50%;left: 50%;box-shadow: 2px 2px 5px #000;}
.mx_mask {width: 100%;height: 100%;background-color: rgba(0,0,0,0.5);}
.diahead{border-bottom: 1px solid #dcdcdc;padding:10px;color: #000;font-size:16px;}
.diasure,.diadelay{padding: 5px;border-radius: 5px;background: #69af05;position: absolute;color: #fff;text-align: center;font-size: 14px;cursor: pointer;}
.diasure {left:0px;top:10px;}
.diadelay {right:0px;top:10px;}
.bomButton {position:absolute;height:50px;bottom: 0px;border-top: 1px solid #dcdcdc;left: 0px;}
.diaContent {display: none;overflow:auto;padding: 0 10px;}
.icon-clear { position:absolute;top:10px;right:10px;width:15px;height:15px;cursor:pointer;}

#dia-1 {color: #fff;background:#69af05;text-align: center;}
.diaContent h1 {font-size: 16px;font-weight: normal;}

/*第二个弹窗*/
.disImg {width: 400px;margin:0 auto;display:none;}
.disImg-all {padding: 10px;}

js代码(dialog.js)

$.fn.mxDialog = function(options){
             var dia = $.extend({
                   //弹窗显示几秒后消失
                 diaFlag : {
                     flag : 'false',
                     time : '3000'
                 },
                   // 弹窗id
                    targetId: 'dia-0',
                    mx_all: $(document.body),   //定义body
                    enable: true,      //定义插件是否可用
                    // 弹窗
                    diaName: 'mx_dialog',
                    // 遮罩层
                    diaMask: 'mx_mask',
                    // 弹窗大小
                    size:{
                        diaW:500,
                        diaH:300,
                        back : '#fff'

},
                    // 关闭按钮
                    diaClose: {
                        close:'icon-clear',
                        flag : 'true'
                    },

// 标题是否显示
                    diaHead:{
                        hClass:'diahead',
                        title:'这个是标题'
                    },
                    //确定按钮执行操作
                    diaSure: {
                      sClass : 'diasure',
                      sDataId : 'sure-0',
                      sTitle : '确定'
                    },
                    diaDelay: {
                      dClass : 'diadelay',
                      dDataId : 'delay-0',
                      dTitle : '取消'
                    },
                    //添加内容区域
                    diaContent :'diaContent',

//确定和取消按钮是否显示
                     bomCon : {
                         bomConClass : 'bomButton',
                         flag : 'true'
                     },
             //    回调函数
                    diafun : function() {

}

},options);

dia.diafun();

var allHeight = $('#'+dia.targetId).height() - $('.diahead').outerHeight(true) - $(".bomButton").height();

dia.mx_all = (typeof dia.mx_all == 'string' ? $(dia.mx_all) : dia.mx_all);

//弹出层
             var dialog = $('<div></div>')
                          .attr('class',dia.diaName)
                          .attr('id',dia.targetId)
                         .css({
                                   'width' : dia.size.diaW,
                                   'height' : dia.size.diaH,
                                   'margin-left': -dia.size.diaW / 2,
                                   'margin-top': -dia.size.diaH / 2,
                          })
                         .appendTo(dia.mx_all);

//遮罩层
             var mask = $('<div></div>')
                          .attr('class',dia.diaMask)
                          .css({
                              width:$(window).width(),
                              height:$(window).height()
                          })
                          .appendTo(dia.mx_all);

//关闭窗口按钮
           if( dia.diaClose.flag == 'true') {
               var close = $('<a></a>')
                   .attr('class',dia.diaClose.close)
                   .appendTo(dialog).on('click',function(){
                       $(".mx_dialog").hide();
                       $(".mx_mask").hide();
                   });
           } else {
               $("." + dia.diaClose.flag).css('display','none');
           }

// 确定和取消按钮
          //判断是否显示bottom
         if( dia.bomCon.flag == 'true') {
             var bomButton = $('<div></div>')
                 .attr('class',dia.bomCon.bomConClass)
                 .css({
                     'width' : dia.size.diaW,
                 })
                 .appendTo(dialog);
         } else {
             $("."+dia.bomCon.bomConClass).css({
                 display:'none'
             })
         }
          var bomButtonAll = $('<div style="position:relative;width:200px;margin:0 auto;height:50px;"></div>').appendTo(bomButton);
          var diasure = $('<span></span>')
                               .attr('class',dia.diaSure.sClass)
                               .attr('id',dia.diaSure.sDataId)
                               .text(dia.diaSure.sTitle)
                               .appendTo(bomButtonAll)
                               .on('click',function(){               //点击确定后执行的操作
                                  $(".mx_dialog").hide();
                                  $(".mx_mask").hide();
                               });
          var diadelay = $('<span></span>')
                               .attr('class',dia.diaDelay.dClass)
                               .attr('id',dia.diaDelay.dDataId)
                               .text(dia.diaDelay.dTitle)
                               .appendTo(bomButtonAll)
                               .on('click',function(){                //点击取消后执行的操作
                                  $(".mx_dialog").hide();
                                  $(".mx_mask").hide();
                               });

// 添加标题
          if(dia.diaHead.flag == 'true') {
             var head = $('<h1></h1>')
                          .attr('class',dia.diaHead.hClass)
                          .text(dia.diaHead.title)
                          .appendTo(dialog);

allHeight = $('#'+dia.targetId).height() - $('.diahead').outerHeight(true) - $(".bomButton").height();
          } else {
            $('.'+dia.diaContent).css ({
              'margin-top' : '25px'
            })
            allHeight = $('#'+dia.targetId).height() - $(".bomButton").height() - 25;
          }
          //添加内容区域
          var diacontent = $('.'+dia.diaContent)
                                  .css({
                                    display:'block',
                                    height : allHeight
                                  })
                                  .appendTo(dialog);
        //弹框显示的时间
        if( dia.diaFlag.flag == 'true') {
            setTimeout(function () {
                $('#' + dia.targetId).css('display','none');
                $("." + dia.diaMask).css('display','none');
            },dia.diaFlag.time)
        }
 }

dialog使用方法(同一页面,调用一个js代码,实现多个不同样式的弹窗)的更多相关文章

  1. 防止木马利用iframe框架来调用外域JS代码

    <!--防止木马利用iframe框架来调用外域JS代码,不过滤自己网站的域名的框架网页开始--><SCRIPT LANGUAGE="JavaScript"> ...

  2. Vue传递方法给页面调用

    很多人在使用vue的时候苦于在vue中写方法,但是在外部甚至在另一个js该如何调用呢? 这个方法就是显示了vue的可以传递方法到页面使得页面任何地方都可以调用 前提得引用文件 这个方法一般多用于加载周 ...

  3. 怎样确保页面中的js代码一定是在DOM结构生成之后再调用

    有这样一类问题, 如下所示, 就是在dom结构没有生成时就在js代码中调用了, 此时就会报错: <head> <script> console.log(document.bod ...

  4. <frameset>框架集中不同<frame>之间的调用【js代码中】

    top:永远指分割窗口最高层次的浏览器窗口;parent:包含当前分割窗口的父窗口,本文将围绕js中top.parent.frame进行讲述及他们的应用案例 引用方法top: 该变量永远指分割窗口最高 ...

  5. asp.net后台调用前台js代码

    为了通过ajax异步获取数据,我通过使用jquery的$(function{})方法,在页面加载时发送ajax请求,获取相关的数据.但是遇到了一个问题,当我发送的ajax请求需要根据传过来的URL参数 ...

  6. Bootstrap方法为页面添加一个弹出框

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. 非常好的一个JS代码(FixedMenu.htm)

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  8. 非常好的一个JS代码(CJL.0.1.js)

    /*! * Cloudgamer JavaScript Library v0.1 * Copyright (c) 2009 cloudgamer * Blog: http://cloudgamer.c ...

  9. zencart 新页面调用好功能代码集:

    其实很多就是看变量,就可以直接调用,而变量的定义地方很多,比如language 1.  includes\languages\语言.php 2. 写个文件,放进includes\extra_confi ...

随机推荐

  1. css高级选择器

    并集选择器 p,h1{} 交集选择器 p.first{} 后代选择器:嵌套标签 h1 span{} 子元素选择器 h1>span{} 属性选择器 input[type="passwor ...

  2. 浩哥解析MyBatis源码(八)——Type类型模块之TypeAliasRegistry(类型别名注册器)

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6705769.html 1.回顾 前面几篇讲了数据源模块,这和之前的事务模块都是enviro ...

  3. Web前端相关资源

    Web前端相关 GRUNT: js task runner Sea.js: js模块化 knockout.js:MVVM开发前台,绑定技术 Angular.js: 使用超动感HTML & JS ...

  4. Linux - IP数据报报头及个字段的意义

    IP数据报的格式: IP 数据报的首部长度和数据长度都是可变长的,但总是4字节的整数倍. 对于IPv4 ,4位版本字段是4. (1)版本 占4位,指IP协议的版本.通信双方使用的IP协议版本必须一致. ...

  5. Nodejs进阶:express+session实现简易身份认证

    本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 文档概览 本文基于express.express-session ...

  6. bootstrap快速入门笔记(七)-表格,表单

    一,表格 1,<table>中加.table类 2,条纹表格:通过 .table-striped 类可以给 <tbody> 之内的每一行增加斑马条纹样式. **跨浏览器兼容性: ...

  7. bzoj3112 [Zjoi2013]防守战线

    正解:线性规划. 直接套单纯形的板子,因为所约束条件都是>=号,且目标函数为最小值,所以考虑对偶转换,转置一下原矩阵就好了. //It is made by wfj_2048~ #include ...

  8. ZJOI2017 Round#2 滚粗记

    在杭州的火车站的KFC餐厅里,独自一人,闲来无事,便写写这篇博客.刚刚的一个礼拜,经历了余姚的省选和杭州的数学集训,感觉有些浪,学校里现在还在上新课,我已经落下一个礼拜的文化课了,回去估计补死:最重要 ...

  9. vsftp使用方法与问题解决

    安装环境 OS:Centos 6.4 vsftp:vsftpd-2.2.2-11.el6_3.1.i686.rpm vsftpd配置文件:/etc/vsftpd/vsftpd.conf 一.      ...

  10. JavaScript利用闭包循环绑定事件

    我们经常在做前端面试题的时候,会遇到循环绑定事件后,输出打印结果,很多人总是搞不清楚,今天借此机会跟大家梳理一下闭包相关作用. 1.首先我们举一个简单的例子. html部分: <a href=& ...