layer的使用

4.24更新:注意:layer现在有旧版1.8.5版本和新版本3.0版本的,对应引入的JQ也要不同,相对应的JQ引入1.1和3.1,否则JQ会出问题

4.21更新; 

  解答4-19的问题:采用红色字  

4,19日更新问题

  在老版本中(1.7)版中遇到的问题;问题补充:准确的说是,在移动端中所出现的问题,

   layer.confirm()     //在运行时会报错,是什么原因呢?    

    原因:在移动端中,其实是不支持,layer.alert(),layer.confirm(),layer.msg()等方法的,只支持 layer.open() ;参数根据相关文档去配置就好了;

   layer.open({content:\’你确定删除吗?\’,btn:[\’确定’,\’取消\’]})  //显示的确定在右边,并且调用函数是错的?

    原因:移动端本来就是与PC相反的,是为了符合用户习惯。所以在移动端书写时正常书写就好,只有2个按钮时,确定回掉用yes:function(){},取消回掉用no:function(){};有多个按钮时;确定按钮会在最右侧,确定也是用yes:function(){};其他按钮用,btn2:function(){},btn3:fubction(),    

   if(!layer.open({content:\’你确定删除吗?\’,btn:[\’确定’,\’取消\’]}))  return false ; //第一次显示正常,第二次就不执行了,直接执行后面的语句,导致内容删除掉?

    原因:采用上题的方法就不会出现问题;

    改成:

layer.open({
    content:\'测试\',
    btn: [\'确定\', \'取消\'],
    yes:function(index, layero) {
      console.log(\'确定\');
       },
    no:function(index, layero) {
            //点击取消时,弹出框就没了
    }
})   

 

  

简介:web弹层组件;更少的代码展现更强健的功能;永久性提供无偿服务;

使用:

  1,下载layer.zip,解压;

  2,引入jquery.js和 layer.js;这是一个独立于layui的组件,不需要依赖什么;

  3,demo:

<script src="jquery-1.8.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="layer/layer.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript"> 
//layer.alert(
\'hello world!\');

  layer.alert(\’hello\’, {
  icon: 1,
  skin: \’layer-ext-moon\’
  })

 </script>

可以看出:只是将单单的alert换成了layer.alert,其他同理;后面可跟参数来设置显示的样式;你以为仅仅只是这样吗,前面只是简单的用法,然并卵;正确的打开方式这..这样子的

layer.open({
  type: 1, 
  content: \'传入任意的文本或html\'
})

 

  4,基础参数:

    1,(层类型)  type:   layer提供了5种层类型。可传入的值有:

          0(信息框,默认)  包括(alert,confirm,msg)

          1(页面层)

          2(iframe层)

          3(加载层)

          4(tips层)

      若你采用layer.open({type: 1})方式调用,则type为必填项(信息框除外)

layer.open({
  type: 1, 
  content: \'我是页面层\'
});

    2,(标题)  title:  3种类型:String/Array/Boolean,默认:\’信息\’

    3,(内容)  content:  3种类型:String/DOM/Array,默认:\’\’ 

    4,(皮肤) skin:        类型:String,默认:\’\’   

//单个使用
layer.open({
  skin: \'demo-class\'
});
//全局使用。即所有弹出层都默认采用,但是单个配置skin的优先级更高
layer.config({
  skin: \'demo-class\'
})
//CSS 
body .demo-class .layui-layer-title{background:#c00; color:#fff; border: none;}
body .demo-class .layui-layer-btn{border-top:1px solid #E9E7E7}
body .demo-class .layui-layer-btn a{background:#333;}
body .demo-class .layui-layer-btn .layui-layer-btn1{background:#999;}
…
 // 加上body是为了保证优先级。你可以借助Chrome调试工具,定义更多样式控制层更多的区域。 

扩展:layer皮肤制作说明。

【第一步】:命名文件夹
在layer的skin目录建立一个文件夹,假设您将该文件夹命名为:yourskin
【第二步】:创建样式等文件
在yourskin文件夹下建立一个单独的样式文件,务必命名为:style.css。并且你可能用到的图片也要存放在该文件夹下
【第三步】:书写样式
/*
通过body前缀,是为了确保你皮肤的优先级
你可以通过调试工具重置更多样式
*/
body .layer-ext-yourskin .layui-layer-title{}
body .layui-ext-yourskin .layui-layer-btn{}
body .layui-ext-yourskin .layui-layer-btn a{}
【第四步】:调试
通过全局配置看看你的皮肤定义的如何:
layer.config({
extend: \’myskin/style.css\’, //加载您的扩展样式
skin: \’layer-ext-yourskin\’
});
layer.alert(\’layer皮肤-Yourskin\’);
【最后一步】:发布
1. 现在你已经成功制作了一个皮肤了,如果你觉得它很美,你可以共享出更多的人使用。
2. 那么你应该制作一个简单的页面来介绍你的皮肤,提供尽可能简单的使用说明(就像这个:layer.seaning.com)。
3. 然后将你的皮肤主题页网址通过任意渠道发给贤心(比如可以通过邮箱:xu@sentsin.com)

 

 

 

————————————and more—–参考官方文档——————————————————— 

   

area宽高

offset坐标

icon提示图标

btn提示按钮

btnAlign按钮排列

closeBtn右上关闭

shade遮罩

shadeClose

time自动关闭

id唯一id

anim动画

isOutAnim关闭动画

maxmin最大小化

fixed是否固定

resize是否允许拉伸

resizing正在拉伸

scrollbar屏蔽滚动

maxWidth最大宽

zIndex层叠值

move拖拽元素

moveOut拖出

moveEnd回调

tipsTips参数

tipsMore允许多tips

success弹出后回调

yes确定回调

cancel关闭回调

end销毁后回调

full/min/restore

内置方法

config全局设置

ready就绪

open核心方法

alert弹框

confirm询问

msg提示

load加载

tips吸附

close关闭层

closeAll关闭全部

style

title重置标题

getChildFrame

getFrameIndex

iframeAuto

iframeSrc

setTop多层置顶

full/min/restore

其他内置层

prompt输入层

tab选项卡层

photos图片层

 

  

 

版权声明:本文为liyiyy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/liyiyy/p/6698649.html