layer是一款近年来备受青睐的web弹层组件,她具备全方位的解决方案,致力于服务各水平段的开发人员,您的页面会轻松地拥有丰富友好的操作体验。

Layer的开发手册和下载地址

http://layer.layui.com/api.html

http://layer.layui.com/

Open

基本上是露脸率最高的方法,不管是使用哪种方式创建层,都是走layer.open(),创建任何类型的弹层都会返回一个当前层索引,该网站中的options即是基础参数http://layer.layui.com/api.html#type 例子:

layer.open
({
        type:0,
        content:"成功,喵呜~",
        icon:6,
        closeBtn: 2,
        btn1:function(index){layer.closeAll()},
       end:function(){layer.closeAll()}
});  

CloseAll关闭弹窗

它会销毁掉当前页所有的layer层。当然,如果你也可以指定关闭某个类型的层

layer.closeAll(); //疯狂模式,关闭所有层

layer.closeAll('dialog'); //关闭信息框

layer.closeAll('page'); //关闭所有页面层

layer.closeAll('iframe'); //关闭所有的iframe层

layer.closeAll('loading'); //关闭加载层

layer.closeAll('tips'); //关闭所有的tips层  

var index = parent.layer.getFrameIndex(window.name); //获取窗口索引

//parent.layer.closeAll(index);

parent.layer.closeAll();


Tips小贴士

它拥有和 msg 一样的低调和自觉,而且会智能定位,即灵活地判断它应该出现在哪边。默认是在元素右边弹出

function tips()
{

        layer.tips("想要修改东西,先点击我解除", $("#edit"),
        {
            tips: [1, '#3595CC'],
            time: 4000
        });

        $("#add,#edit,#save,#cut,#remove").mouseover(function ()
        {
            var title = $(this).attr("title");
            layer.tips(title, $(this), {
                tips: [1, '#3595CC'],
            });
        }).mouseleave(function ()
        {
            layer.closeAll('tips');
        })
}

Load加载图

load 默认是不会自动关闭的,因为你一般会在 ajax 回调体中关闭它。

layer.load(0,{
  shade:[0.5,'#fff'],
  time:10 * 1000
})    

Confirm询问框

Confirm 方法是对 Open函数的变形

//询问框
layer.confirm('确认退出吗?', {
    btn: ['确定', '取消'] //按钮
}, function ()
{
    window.location.href = "/index.aspx";
    layer.closeAll();
    //提示层
    layer.msg('正在退出...');
}, function ()
{
    return;
});

Msg

露脸率最高的提示框

layer.msg('玩命提示中');

layer.msg(
'这里放置文本内容',
{
    //这里放置基础参数
    icon: 1, //1为正确图标,2为错误图标
    time: 2000, //2秒关闭(如果不配置,默认是3秒)
    closeBtn:2
},
 function(){
    //这里写end事件
});  

Iframe

最强大的弹出框

layer.open({
    type: 2,
    title: "正在与门店进行亲切会谈",
    shadeClose: true,
    shade: false,
    maxmin: true, //开启最大化最小化按钮
    area: ['400px', '600px'],
    content: "chat.aspx?roomid=" + id
});

IFrame子父窗口交接

var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.closeAll(index);
parent.layer.closeAll();

 居中问题

 $('img').load(function()
{
    //由于模板中存在图片未加载,当layer弹出的时候。宽度计算错误导致不居中,所以我手动居中了
    var widthForWindow = $(window).width();
    var winthForLayer = $(".mylayer").width();
    var myWidth = (widthForWindow - winthForLayer) / 2;
    layer.style(index,{left:myWidth,top:"15%"});
}) 

 模板通常会配合open使用

$("#jifenpeizhi").click(function ()
          {
              layer.closeAll();
              var index =  layer.open
              ({
                  type: 1,
                  title: "积分配置",
                  content: $("#template").html(),
                  btn: 1,
                  shade:0,
                  skin:"jifenpeizhi"
              });

              $("#start,#end").bind("click",function()
              {
                  var id = "#" + $(this).attr("id");
                  laydate({
                      elem: id,
                      format: 'YYYY/MM', // 分隔符可以任意定义,该例子表示只显示年月
                      festival: true, //显示节日
                      choose: function (datas)
                      {
                          //选择日期完毕的回调
                          alert('得到:' + datas);
                      }
                  })
              })

             $(".jifenpeizhi").css({"min-width":"700px" });
              //由于模板中存在图片未加载,当layer弹出的时候。宽度计算错误导致不居中,所以我手动居中了
             var widthForWindow = $(window).width();
             var winthForLayer = $(".jifenpeizhi").width();
             var myWidth = (widthForWindow - winthForLayer) / 2;
             layer.style(index, { left: myWidth, top: "15%" });

          })

 监听ESC关闭所有的layer

  document.onkeydown = function (event)
          {
              var e = event || window.event || arguments.callee.caller.arguments[0];
              var keyCode = e.keyCode || e.which;
              if (keyCode == "27")
              {
                  layer.closeAll();
              }
          }

 手机版

layer.open({ title: '信息', content: '金额必须为正整数',btn:["好的"],yes:function(){layer.closeAll();}  });

load

layer.open({type: });

Layer弹窗组件的更多相关文章

  1. layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案

    layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案 >>>>>>>>>>>>> ...

  2. Vue列表组件与弹窗组件示例

    列表组件 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <me ...

  3. Jquery弹窗组件

    下面是写的简单的Jquery弹窗组件 暂不支持animate,只能满足一般的弹窗显示隐藏需求,更多功能后续会完善!网上及jquery组件很多这样的弹窗,但是用别人的感觉心里过不去,所以就随便写写,当做 ...

  4. 百度智能小程序弹窗组件wcPop|智能小程序自定义model弹窗模板

    百度智能小程序自定义弹窗组件wcPop|百度小程序model对话框|智能小程序弹窗界面模板 最近百度也推出了自己的智能小程序,如是就赶紧去试了下,官方提供的api还不是狠完整.而且官方提供的弹窗组件也 ...

  5. 基于JQ的自定义弹窗组件

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 微信小程序弹窗组件

    概述 自己封装的一个比较简单微信弹窗小组件,主要就是教会大家对微信小组件的用法和理解,因为微信小程序对组件介绍特别少,所以我就把自己的理解分享给大家 详细 代码下载:http://www.demoda ...

  7. 从零开始徒手撸一个vue的toast弹窗组件

    相信普通的vue组件大家都会写,定义 -> 引入 -> 注册 -> 使用,行云流水,一气呵成,但是如果我们今天是要自定义一个弹窗组件呢? 首先,我们来分析一下弹窗组件的特性(需求): ...

  8. Vue - 简单实现一个命令式弹窗组件

    前言 在日常工作中弹窗组件是很常用的组件,但用得多还是别人的,空闲时间就自己来简单实现一个弹窗组件 涉及知识点:extend.$mount.$el 使用方式: this.$Confirm({ titl ...

  9. uni-app自定义Modal弹窗组件|仿ios、微信弹窗效果

    介绍 uniapp自定义弹窗组件uniPop,基于uni-app开发的自定义模态弹窗|msg信息框|alert对话框|confirm确认框|toast弱提示框 支持多种动画效果.多弹窗类型ios/an ...

随机推荐

  1. Jmeter测试环境搭建(一)

    一.工具描述 Apache JMeter是    100%的java桌面应用程序.它可以被用来测试包括基于静态和动态资源程序的性能,例如静态文件,Java Servlets,Java 对象,数据库,F ...

  2. POJ 1840 HASH

    题目链接:http://poj.org/problem?id=1840 题意:公式a1x1^3+ a2x2^3+ a3x3^3+ a4x4^3+ a5x5^3=0,现在给定a1~a5,求有多少个(x1 ...

  3. express-10 表单处理

    从用户那里收集信息的常用方法就是使用HTML表单.无论是使用浏览器提交表单,还是使用AJAX提交,或是运用精巧的前端控件,底层机制通常仍旧是HTML表单. 向服务器发送客户端数据 向服务器发送客户端数 ...

  4. Java类与对象的基础学习

    1. 请输入并运行以下代码,得到什么结果? public class Test{ public static void main(String args[]){ Foo obj1=new Foo(); ...

  5. 关于listView 中的聚焦问题

    我在使用listView+adapter 中,遇到一个问题,就是item项添加了若干个可以被监听的控件后 在listView中的setOnItemClickListener失效了 原因是焦点已经在it ...

  6. sql 、linq、lambda 总结

    LINQ的书写格式如下: from 临时变量 in 集合对象或数据库对象 where 条件表达式 [order by条件] select 临时变量中被查询的值 [group by 条件] Lambda ...

  7. 关于在C#中构造函数中调用虚函数的问题

    在C#中如果存在类的继承关系,应避免在构造函数中调用虚函数.这是由于C#的运行机制造成的,原因如下: 新建一个类实例时,C#会先初始化该类(对类变量赋值,并将函数记在函数表中),然后再初始化父类.构造 ...

  8. The 2015 China Collegiate Programming Contest D.Pick The Sticks hdu 5543

    Pick The Sticks Time Limit: 15000/10000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others ...

  9. 【原】iOS多线程之异步任务+并行队列情况与异步任务+串行队列(主队列)情况

    异步任务+并行队列 把异步任务放到并行队列进行执行,异步任务会在不同的线程中执行. /*异步执行+并行队列*/ - (IBAction)clickBasic1:(UIButton *)sender { ...

  10. linux 安装eclipse 和cdt

    这个东西说起来简单,但是经历了无数次到失败,终于还是安装完成了. 最早到时候我下载了eclipse和cdt让后安装,安装完成以后,无法运行和编译程序 后来我学到了一个牛逼的命令yum 这个命令会帮助我 ...