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. 装饰器模式(Decorator)——深入理解与实战应用

    本文为原创博文,转载请注明出处,侵权必究! 1.初识装饰器模式 装饰器模式,顾名思义,就是对已经存在的某些类进行装饰,以此来扩展一些功能.其结构图如下: Component为统一接口,也是装饰类和被装 ...

  2. 图文详解linux如何搭建lamp服务环境

    企业网站建设必然离不开服务器运维,一个稳定高效的服务器环境是保证网站正常运行的重要前提.本文小编将会详细讲解Linux系统上如何搭建配置高效的lamp服务环境,并在lamp环境中搭建起企业自己的网站. ...

  3. 我从现象中学到的CSS

    文字溢出隐藏 如果你观察过浮动元素,你会发现这样一个事实,当前一个元素将宽度占满以后,后一个元素就会往下掉,如下所示 代码如下 <style> div,p{ margin:0; } #bo ...

  4. vim工具

    今天和同事讨论使用什么看代码,使用什么写代码的问题.我觉得source insight用来看代码真的还是蛮舒服的,但是他觉得他习惯了VS,用着顺手. 但是我的想法是,有好的工具,得先花点时间去学习使用 ...

  5. java复习(8)---I/O

    本节复习java常用i/o,输入输出流. 先放上样例代码.方便参考,可以轻松看懂. package re08; import java.io.*; import java.util.Scanner; ...

  6. Mahout源码分析:并行化FP-Growth算法

    FP-Growth是一种常被用来进行关联分析,挖掘频繁项的算法.与Aprior算法相比,FP-Growth算法采用前缀树的形式来表征数据,减少了扫描事务数据库的次数,通过递归地生成条件FP-tree来 ...

  7. SpringMVC是什么?

    一,首先是一个MVC框架. 在web模型中,MVC是一种很流行的框架,通过把Model,View,Controller分离,把较为复杂的web应用分成逻辑清晰的几部分,是为了简化开发,减少出错.还是为 ...

  8. 【算法系列学习】codeforces D. Mike and distribution 二维贪心

    http://codeforces.com/contest/798/problem/D http://blog.csdn.net/yasola/article/details/70477816 对于二 ...

  9. 蓝桥杯-有理数类-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  10. javascript原生方法实现extend

    var extend = (function () { for(var p in {toString:null}){ //检查当前浏览器是否支持forin循环去遍历出一个不可枚举的属性,比如toStr ...