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. 关于ajax post请求跨域问题的解决心得

    最近啊,公司有个项目,需要做一个手机端APP的后台管理系统.所以用到了度文本编辑框,经过了好好一番周折,终于弄好了,带到上线的时候发现啊,只能使用ip去访问网页的时候上能穿图片他不会报跨域的问题,而使 ...

  2. JavaScript高级程序设计---学习笔记(五)

    1.2D上下文 1)填充与描边 填充和描边的两个操作取决于两个属性:fillStyle和strokeStyle.两个属性的值可以是字符串.渐变对象或模式对象,默认值都是#000000 例: html: ...

  3. App启动页倒计时功能

    转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6753418.html 示例代码采用 RxJava + RxLifecycle + Data-Binding ...

  4. ABP入门系列(16)——通过webapi与系统进行交互

    ABP入门系列目录--学习Abp框架之实操演练 源码路径:Github-LearningMpaAbp 1. 引言 上一节我们讲解了如何创建微信公众号模块,这一节我们就继续跟进,来讲一讲公众号模块如何与 ...

  5. 利用Scrapy爬取所有知乎用户详细信息并存至MongoDB

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者 :崔庆才 本节分享一下爬取知乎用户所有用户信息的 Scrapy 爬虫实战. 本节目标 本节要实现的内容有 ...

  6. HashMap 学习笔记

    先摆上JDK1.8中HashMap的类注释:我翻译了一下 /** * Hash table based implementation of the <tt>Map</tt> i ...

  7. PPT素才搜索简谈

    PPT已经是大部分公司工作汇报.培训.年度总结等不可缺少的办公软件.下面介绍一些关于PPT素才搜索的方法. 第一:模板    1.搜索大法--filetype:对应的文档格式 在关键词后添加这样一段文 ...

  8. C++STL中map容器的说明和使用技巧(杂谈)

    1.map简介 map是一类关联式容器.它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响.对于迭代器来说,可以修改实值,而不能修改key. 2.map的功能 自 ...

  9. Java基础语法(一)<注释,关键字,常量,变量,数据类型,标识符,数据类型转换>

    从今天开始,记录学习Java的过程.要学习Java首先得有环境,至于环境的安装我就不说了,百度有很多教程,比如:http://jingyan.baidu.com/article/20095761904 ...

  10. CSS垂直和水平居中

    在css中,居中使用十分频繁. 居中分为水平和垂直居中 水平居中十分简单: body{ background:#f90; } body统一为这个颜色 div { margin:0 auto; back ...