• layer弹框层学习笔记


      这里对layer的笔记只是大概记录一下其使用过程,以便后续使用时快速回顾,更详细使用及介绍参考官网实例。链接在本文末

    一 、初步了解layer-弹层之美

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

      在与同类组件的比较中,layer总是能轻易获胜。她尽可能地在以更少的代码展现更强健的功能,且格外注重性能的提升、易用和实用性,正因如此,越来越多的开发者将媚眼投上了layer(已被8267108人次关注)。layer 甚至兼容了包括 IE6 在内的所有主流浏览器。她数量可观的接口,使得您可以自定义太多您需要的风格,每一种弹层模式各具特色,广受欢迎。当然,这种“王婆卖瓜”的陈述听起来总是有点难受,因此你需要进一步了解她是否真的如你所愿。

      几个效果展示:

    简单内容展示  TAB层

    二 、基本使用流程

    1.引入jQuery1.8以上的任意版本
    2.引入layer.js,将下载的layer包整个导入项目中
    3.编写弹出层方法
    4.调用弹框
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LayerTest.aspx.cs" Inherits="WebLayer.Scripts.LayerTest" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
        <%-- 1.引入jQuery1.8以上的任意版本 --%>
        <script src="jquery-3.3.1.min.js"></script>
        <%-- 2.引入layer.js --%>
        <script src="../layer-v3.1.1/layer/layer.js"></script>
        <%-- 3.编写弹出层方法 --%>
        <script type="text/javascript">
            function Content() {
                layer.alert('内容');
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
            <div>
                <%-- 4.调用弹框 --%>
                <a onclick="Content()">Add</a>
            </div>
        </form>
    </body>
    </html>

    三 、一些弹框举例

    //初体验
    
    layer.alert('内容')
    //第三方扩展皮肤
    
    layer.alert('内容', {
      icon: 1,
      skin: 'layer-ext-moon' //该皮肤由layer.seaning.com友情扩展。关于皮肤的扩展规则,去这里查阅
    })
    //询问框
    
    layer.confirm('您是如何看待前端开发?', {
      btn: ['重要','奇葩'] //按钮
    }, function(){
      layer.msg('的确很重要', {icon: 1});
    }, function(){
      layer.msg('也可以这样', {
        time: 20000, //20s后自动关闭
        btn: ['明白了', '知道了']
      });
    });
    //提示层
    
    layer.msg('玩命提示中');
    //墨绿深蓝风
    
    layer.alert('墨绿风格,点击确认看深蓝', {
      skin: 'layui-layer-molv' //样式类名
      ,closeBtn: 0
    }, function(){
      layer.alert('偶吧深蓝style', {
        skin: 'layui-layer-lan'
        ,closeBtn: 0
        ,anim: 4 //动画类型
      });
    });
    //捕获页
    
    layer.open({
      type: 1,
      shade: false,
      title: false, //不显示标题
      content: $('.layer_notice'), //捕获的元素,注意:最好该指定的元素要存放在body最外层,否则可能被其它的相对元素所影响
      cancel: function(){
        layer.msg('捕获就是从页面已经存在的元素上,包裹layer的结构', {time: 5000, icon:6});
      }
    });
    //页面层
    
    layer.open({
      type: 1,
      skin: 'layui-layer-rim', //加上边框
      area: ['420px', '240px'], //宽高
      content: 'html内容'
    });
    //自定页
    
    layer.open({
      type: 1,
      skin: 'layui-layer-demo', //样式类名
      closeBtn: 0, //不显示关闭按钮
      anim: 2,
      shadeClose: true, //开启遮罩关闭
      content: '内容'
    });
    //tips层
    
    layer.tips('Hi,我是tips', '吸附元素选择器,如#id');
    //iframe层
    
    layer.open({
      type: 2,
      title: 'layer mobile页',
      shadeClose: true,
      shade: 0.8,
      area: ['380px', '90%'],
      content: 'mobile/' //iframe的url
    }); 
    //iframe窗
    
    layer.open({
      type: 2,
      title: false,
      closeBtn: 0, //不显示关闭按钮
      shade: [0],
      area: ['340px', '215px'],
      offset: 'rb', //右下角弹出
      time: 2000, //2秒后自动关闭
      anim: 2,
      content: ['test/guodu.html', 'no'], //iframe的url,no代表不显示滚动条
      end: function(){ //此处用于演示
        layer.open({
          type: 2,
          title: '很多时候,我们想最大化看,比如像这个页面。',
          shadeClose: true,
          shade: false,
          maxmin: true, //开启最大化最小化按钮
          area: ['893px', '600px'],
          content: '//fly.layui.com/'
        });
      }
    });
    //加载层
    
    var index = layer.load(0, {shade: false}); //0代表加载的风格,支持0-2
    //loading层
    
    var index = layer.load(1, {
      shade: [0.1,'#fff'] //0.1透明度的白色背景
    });
    //小tips
    
    layer.tips('我是另外一个tips,只不过我长得跟之前那位稍有些不一样。', '吸附元素选择器', {
      tips: [1, '#3595CC'],
      time: 4000
    });
    //prompt层
    
    layer.prompt({title: '输入任何口令,并确认', formType: 1}, function(pass, index){
      layer.close(index);
      layer.prompt({title: '随便写点啥,并确认', formType: 2}, function(text, index){
        layer.close(index);
        layer.msg('演示完毕!您的口令:'+ pass +'<br>您最后写下了:'+text);
      });
    });
    //tab层
    
    layer.tab({
      area: ['600px', '300px'],
      tab: [{
        title: 'TAB1', 
        content: '内容1'
      }, {
        title: 'TAB2', 
        content: '内容2'
      }, {
        title: 'TAB3', 
        content: '内容3'
      }]
    });
    //相册层
    
    $.getJSON('test/photos.json?v='+new Date, function(json){
      layer.photos({
        photos: json //格式见API文档手册页
        ,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机
      });
    });

    Layer弹框属性介绍官网链接:https://www.layui.com/doc/modules/layer.html

    Layer弹框JS包下载及弹框在线演示:http://layer.layui.com/

  • 相关阅读:
    APP热潮来临 图解九种商业模式
    Visual Studio 2010北京发布会
    高薪诚聘项目经理,架构师,高级工程师,工程师,网页设计师
    WCF闲谈:如何在流模式下传递参数
    下周股市走势预测
    明日大盘走势分析
    三步找出牛股技法
    Y COMBINATOR的六大强悍女人转自应用电台
    互联网创业公司失败的7个典型特征应用电台
    更多Windows Phone 8新功能详解
  • 原文地址:https://www.cnblogs.com/xieyang07/p/10292688.html
Copyright © 2020-2023  润新知