Layui layer 弹出层的使用
首先,为了方便直接通过在线cdn引入对应的css和js
<!-- 引入 layui.css -->
<link href="//unpkg.com/layui@2.8.0/dist/css/layui.css" rel="stylesheet"> 
<!-- 引入 layui.js -->
<script src="//unpkg.com/layui@2.8.0/dist/layui.js"></script>
 
layer即弹出层组件,集众多弹层功能为一体,灵活而多样,是许多开发者的网页弹出层的首选交互方案,在各类业务场景都能发挥重要作用。
使用时,通过layer.open(options)开启弹出层,通过layer.close(index)关闭弹出层。
打开弹出层时会返回一个索引,然后关闭时只需要将对应的索引传入即可。
var index = layer.open({
	// options
});
layer.close(index);
 
弹出层类型可以大致分为5类:
- 对话信息框 dialog ,type=0
 - 页面层 page ,type=1
 - 内联框架层 Iframe ,type=2
 - 加载层 loading ,type=3
 - tips层 tips ,type=4
 
options选项包括:
- type:弹出层的类型,即上面列举的五类,属性值为0~4
 - title:弹出层的标题名称
 - content:弹出层的内容,根据type值可以封装不同的内容,type=1则可以传入字符串或者DOM元素,type=2则可以传入一个url…或者字符串…
 - area:设置弹出层的宽高
 - offset:设定弹出层的偏移坐标
 - anim:弹出层动画
 - shade:弹出层的遮罩
 - icon:提示信息图标。(信息框和加载层才有此配置项)
 - btn:自定义按钮。 页面层默认不开启。 按钮可无限数量,每一个按钮均会按照数组顺序生成对应的回调函数。
btn:['1','2','3'],btn1:function(index,layero,that){//函数体}.... - btnAlign:按钮的对齐方式,一共三种居中,右对齐,左对齐,对应取值为c,r,l。
 - …还有很多就不一一赘述
 
回调函数(一些弹出层的事件的封装,直接写好对应的函数体即可):
- success:弹出层打开成功的回调函数
 - yes:点击确定按钮的回调函数
 - cancel:点击标题栏关闭按钮的回调函数
 - end:弹出层被关闭并且销毁后的回调函数
 - moveEnd:弹出层拖曳完毕后的回调函数
 - resizing:弹出层拉伸过程中的回调函数
 - full:弹出层最大化后的回调函数
 - min:弹出层最小化后的回调函数
 - restore:弹出层被还原后的回调函数
 
小例子:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>弹出层学习</title>
    <!-- 引入 layui.css -->
    <link href="//unpkg.com/layui@2.8.0/dist/css/layui.css" rel="stylesheet">
    
    <!-- 引入 layui.js -->
    <script src="//unpkg.com/layui@2.8.0/dist/layui.js"></script>
</head>
<body>
    <!-- 添加两个按钮 -->
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-primary layui-border-green" onclick="btn1()">按钮1</button>
        <button class="layui-btn layui-btn-primary layui-border-blue" onclick="btn()">按钮2</button>
    </div>
    <!-- js -->
    <script>
      function btn1(){
        layer.open({
          type:1, // 页面层
          title:'页面层测试',
          content:'<div><p>hello,world</p><div>',
          area:['400px','200px'],
          anim:2
        })
      }
      function btn(){
        layer.open({
          type:0,// 提示框
          title:'提示框测试', // 弹出层名称
          btn:['确定','取消'], // 按钮组,可以有无限个按钮
          area:['400px','200px'], // 弹出层大小
          btnAlign:'c', //按钮对齐方式
          anim:2, // 动画
          // 按钮组对应的每个按钮的函数
          btn1:function(index, layero, that){
            layer.msg("点击了确定按钮")
          },
          btn2:function(index, layero, that){
            layer.msg("点击了删除按钮")
          },
        })
      }
    </script>
</body>
</html>
 






















