天天看点

基于jquery的layui的layer弹层框架

例对应代码layui.code

<script type="text/javascript" src="/admin/layer/layer.js"></script>
           

特别说明:事件需自己绑定,以下只展现调用代码。

//初体验

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

    ,shift: 4 //动画类型

  });

});

//捕获页

layer.open({

  type: 1,

  shade: false,

  title: false, //不显示标题

  content: $('.layer_notice'), //捕获的元素

  cancel: function(index){

    layer.close(index);

    this.content.show();

    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, //不显示关闭按钮

  shift: 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: 'http://layer.layui.com/mobile/' //iframe的url

}); 

//iframe窗

layer.open({

  type: 2,

  title: false,

  closeBtn: 0, //不显示关闭按钮

  shade: [0],

  area: ['340px', '215px'],

  offset: 'rb', //右下角弹出

  time: 2000, //2秒后自动关闭

  shift: 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: 'http://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 //prompt风格,支持0-2

}, function(pass){

  layer.prompt({title: '随便写点啥,并确认', formType: 2}, function(text){

    layer.msg('演示完毕!您的口令:'+ pass +' 您最后写下了:'+ 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文档手册页

    ,shift: 5 //0-6的选择,指定弹出图片动画类型,默认随机

  });

});

在list页面点击时,弹出form弹出层,list.js:

$(".add_category,.update").click(function(){
        //弹出框
        var doMain = $('.domain_name').val();
        layer.open({
            shade: [0.5, '#000', false],
            type: 2,
            area: ['900px', '530px'],
            fix: false, //不固定
            maxmin: true,
            title: ['添加或修改用户类型', false],
            content: doMain+"/Stat/QueryUserCategoryForm.action?adminUserCategory.id="+$(this).val()
        });
    });
           

 在点击form弹出层的“保存”按钮时,如果保存数据成功,则关闭弹出层,并且刷新list页面:

form.js:

submitHandler: function (form){
            $.post(
                $('.domain_name').val()+"/Stat/AddOrUpdateUserCategory.action",
                $(form).serialize(),
                function(data){
                    var result = eval("("+data+")");
                    if(!result.status){
                        alert(result.message);
                    }else{
                        //添加数据成功,关闭弹出窗之前,刷新列表页面的数据
                        parent.window.location.href=$('.domain_name').val()+"/Stat/QueryUserCategoryListStat.action";
                        var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
                        parent.layer.close(index);
                    }
                }
            );
        }