内置方法

文章目录

  • 内置方法
    • layer.config(options) - 初始化全局配置
    • layer.ready(callback) - 初始化就绪
    • layer.open(options) - 原始核心方法
    • layer.alert(content, options, yes) - 普通信息框
    • layer.confirm(content, options, yes, cancel) - 询问框
    • layer.msg(content, options, end) - 提示框
    • layer.load(icon, options) - 加载层
    • layer.tips(content, follow, options) - tips层
    • layer.close(index) - 关闭特定层
    • layer.closeAll(type) - 关闭所有层
    • layer.style(index, cssStyle) - 重新定义层的样式
    • layer.title(title, index) - 改变层的标题
    • layer.getChildFrame(selector, index) - 获取iframe页的DOM
    • layer.getFrameIndex(windowName) - 获取特定iframe层的索引
    • layer.iframeAuto(index) - 指定iframe层自适应
    • layer.iframeSrc(index, url) - //重置特定iframe url
    • layer.setTop(layero) -置顶当前窗口

layer.config(options) - 初始化全局配置

/*
这是一个可以重要也可以不重要的方法,重要的是,它的权利真的很大,尤其是在模块化加载layer时,你会发现你必须要用到它。它不仅可以配置一些诸如路径、加载的模块,甚至还可以决定整个弹层的默认参数。而说它不重要,是因为多数情况下,你会发现,你似乎不是那么十分需要它。但你真的需要认识一下这位伙计。
*///如果您是采用seajs或者requirejs加载layer,你需要执行该方法来完成初始化的配置。比如:
layer.config({path: '/res/layer/' //layer.js所在的目录,可以是绝对目录,也可以是相对目录
});
//这样的话,layer就会去加载一些它所需要的配件,比如css等。
//当然,你即便不用seajs或者requirejs,也可以通过上述方式设定路径//如果你是采用<script src="?a.js&layer.js">这种合并的方式引入layer,那么您需要在script标签上加一个自定义属性merge="true"。如:
<script src="?a.js&layer.js" merge="true">
这样的话,layer就不会去自动去获取路径,但你需要通过以下方式来完成初始化的配置
layer.config({path: '/res/layer/' //layer.js所在的目录,可以是绝对目录,也可以是相对目录
});//如果采用 layui 加载 layer,无需设置 path。所以前置工作都是自动完成。//但layer.config的作用远不止上述这样。它还可以配置层默认的基础参数,如:
layer.config({anim: 1, //默认动画风格skin: 'layui-layer-molv' //默认皮肤});
//除此之外,extend还允许你加载拓展的css皮肤,如:
layer.config({//如果是独立版的layer,则将myskin存放在./skin目录下//如果是layui中使用layer,则将myskin存放在./css/modules/layer目录下extend: 'myskin/style.css'
});

layer.ready(callback) - 初始化就绪

/*
由于我们的layer内置了轻量级加载器,所以你根本不需要单独引入css等文件。但是加载总是需要过程的。当你在页面一打开就要执行弹层时,你最好是将弹层放入ready方法中
*/
//页面一打开就执行弹层
layer.ready(function(){layer.msg('很高兴一开场就见到你');
});

layer.open(options) - 原始核心方法

/*
基本上是露脸率最高的方法,不管是使用哪种方式创建层,都是走layer.open(),创建任何类型的弹层都会返回一个当前层索引
*/
var index = layer.open({content: 'test'
});
//拿到的index是一个重要的凭据,它是诸如layer.close(index)等方法的必传参数。

layer.alert(content, options, yes) - 普通信息框

/*
它的弹出似乎显得有些高调,一般用于对用户造成比较强烈的关注,类似系统alert,但却比alert更灵便。它的参数是自动向左补齐的。通过第二个参数,可以设定各种你所需要的基础参数,但如果你不需要的话,直接写回调即可
*/
//eg1
layer.alert('只想简单的提示');
//eg2
layer.alert('加了个图标', {icon: 1}); //这时如果你也还想执行yes回调,可以放在第三个参数中。
//eg3
layer.alert('有了回调', function(index){//do something
layer.close(index);
});

layer.confirm(content, options, yes, cancel) - 询问框

/*
类似系统confirm,但却远胜confirm,另外它不是和系统的confirm一样阻塞你需要把交互的语句放在回调体中。同样的,它的参数也是自动补齐的
*/
//eg1
layer.confirm('is not?', {icon: 3, title:'提示'}, function(index){//do somethinglayer.close(index);
});
//eg2
layer.confirm('is not?', function(index){//do somethinglayer.close(index);
});

layer.msg(content, options, end) - 提示框

/*
我们在源码中用了相对较大的篇幅来定制了这个msg,目的是想将其打造成露脸率最高的提示框。而事实上我的确也在大量地使用它。因为它简单,而且足够得自觉,它不仅占据很少的面积,而且默认还会3秒后自动消失所有这一切都决定了我对msg的爱。因此我赋予了它许多可能在外形方面,它坚持简陋的变化,在作用方面,它坚持零用户操作。而且它的参数也是自动补齐的。
*/
//eg1
layer.msg('只想弱弱提示');
//eg2
layer.msg('有表情地提示', {icon: 6});
//eg3
layer.msg('关闭后想做些什么', function(){//do something
});
//eg
layer.msg('同上', {icon: 1,time: 2000 //2秒关闭(如果不配置,默认是3秒)
}, function(){//do something
});

layer.load(icon, options) - 加载层

/*
type:3的深度定制。load并不需要你传太多的参数,但如果你不喜欢默认的加载风格,你还有选择空间。icon支持传入0-2如果是0,无需传。另外特别注意一点:load默认是不会自动关闭的,因为你一般会在ajax回调体中关闭它
*/
//eg1
var index = layer.load();
//eg2
var index = layer.load(1); //换了种风格
//eg3
var index = layer.load(2, {time: 10*1000}); //又换了种风格,并且设定最长等待10秒
//关闭
layer.close(index);

layer.tips(content, follow, options) - tips层

/*
type:4的深度定制。也是我本人比较喜欢的一个层类型,因为它拥有和msg一样的低调和自觉,而且会智能定位,即灵活地判断它应该出现在哪边。默认是在元素右边弹出
*/
//eg1
layer.tips('只想提示地精准些', '#id');
//eg 2
$('#id').on('click', function(){var that = this;layer.tips('只想提示地精准些', that); //在元素的事件回调体中,follow直接赋予this即可
});
//eg 3
layer.tips('在上面', '#id', {tips: 1
});

layer.close(index) - 关闭特定层

/*
关于它似乎没有太多介绍的必要,唯一让你疑惑的,可能就是这个index了吧。事实上它非常容易得到
*/
//当你想关闭当前页的某个层时
var index = layer.open();
var index = layer.alert();
var index = layer.load();
var index = layer.tips();
//正如你看到的,每一种弹层调用方式,都会返回一个index
layer.close(index); //此时你只需要把获得的index,轻轻地赋予layer.close即可//如果你想关闭最新弹出的层,直接获取layer.index即可
layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的//当你在iframe页面关闭自身时
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index); //再执行关闭

layer.closeAll(type) - 关闭所有层

/*
如果你很懒,你不想去获取index你只想关闭。那么closeAll真的可以帮上你。如果你不指向层类型的话,它会销毁掉当前页所有的layer层。当然,如果你只想关闭某个类型的层,那么你可以
*/
layer.closeAll(); //疯狂模式,关闭所有层
layer.closeAll('dialog'); //关闭信息框
layer.closeAll('page'); //关闭所有页面层
layer.closeAll('iframe'); //关闭所有的iframe层
layer.closeAll('loading'); //关闭加载层
layer.closeAll('tips'); //关闭所有的tips层

layer.style(index, cssStyle) - 重新定义层的样式

/*
该方法对loading层和tips层无效。参数index为层的索引,cssStyle允许你传入任意的css属性
*/
//重新给指定层设定width、top等
layer.style(index, {width: '1000px',top: '10px'
});

layer.title(title, index) - 改变层的标题

layer.title('标题变了', index)

layer.getChildFrame(selector, index) - 获取iframe页的DOM

/*
当你试图在当前页获取iframe页的DOM元素时,你可以用此方法。selector即iframe页的选择器
*/
layer.open({type: 2,content: 'test/iframe.html',success: function(layero, index){var body = layer.getChildFrame('body', index);var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();console.log(body.html()) //得到iframe页的body内容body.find('input').val('Hi,我是从父页来的')}
});       

layer.getFrameIndex(windowName) - 获取特定iframe层的索引

/*
此方法一般用于在iframe页关闭自身时用到。
*/
//假设这是iframe页
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index); //再执行关闭

layer.iframeAuto(index) - 指定iframe层自适应

/*
调用该方法时,iframe层的高度会重新进行适应
*/

layer.iframeSrc(index, url) - //重置特定iframe url

/*
似乎不怎么常用的样子。使用方式:
*/
layer.iframeSrc(index, 'http://sentsin.com')

layer.setTop(layero) -置顶当前窗口

/*
非常强大的一个方法,虽然一般很少用。但是当你的页面有很多很多layer窗口,你需要像Window窗体那样,点击某个窗口,该窗体就置顶在上面,那么setTop可以来轻松实现。它采用巧妙的逻辑,以使这种置顶的性能达到最优
*/
//通过这种方式弹出的层,每当它被选择,就会置顶。
layer.open({type: 2,shade: false,area: '500px',maxmin: true,content: 'http://www.layui.com',zIndex: layer.zIndex, //重点1success: function(layero){layer.setTop(layero); //重点2}
});

layui的layer弹出层内置方法相关推荐

  1. 前端ui框架layui——layer弹出层-内置方法

    提示:本页内容所展示的内置方法是除了所有弹出方法(eg:layer.open)以外的,想看弹出方法请到这里 --------内置方法---------- 1.layer.config(options) ...

  2. layui内置模块(layer弹出层)

    前面我们已经对layui前端框架的页面元素进行了简单的学习,但是作为一个可用的程序,仅仅是长的好看,并没有那个什么用:在好看的同时还需要实用和酷炫,实用就需要实现我们方便的和后端进行数据交互,酷炫就是 ...

  3. php layer弹出层更改背景,layui.layer 弹出层背景透明,前景无阴影实现方案

    先上具体实现方法. 首先,在 css 里给 layer 弹出层写个自定义 skin (这点不明白的同学请出门左转 layui 官网文档):.myskin{        background-colo ...

  4. layui弹出层html,layer弹出层

    layer 弹出层,怎么只让他弹出一次.在线等 我昨天用这个插件的时候也有这个问题,弹出内容大了就居不了中.这是组件不完美的地方,他设置了top和left值,而且是固定的.这种弹出层都是绝对定位的 所 ...

  5. Layer——弹出层

    Layer--弹出层 开发工具与关键技术:Visual Studio 前端 作者:盘子 撰写时间:2019年5月16 日 Layui.layer弹层组件文档,layer是layui的代表作,也只是作为 ...

  6. Vue(二十一)Layer弹出层

    安装:下载源码到本地 layer: 丰富多样的 Web 弹出层组件,可轻松实现 Alert/Confirm/Prompt/普通提示/页面区块/iframe/tips 等等几乎所有的弹出交互.目前已成为 ...

  7. php layer弹出层更改背景,详解Layer弹出层样式

    前言:学习layer弹出框,之前项目是用bootstrap模态框,后来改用layer弹出框,在文章的后面,我会分享项目的一些代码(我自己写的). layer至今仍作为layui的代表作,她的受众广泛并 ...

  8. layer弹出层示例

    效果图如下: 代码如下: <link rel="stylesheet" href="../static/thirdparty/layui-v2.4.5/css/la ...

  9. html5相对父元素定位,layer弹出层设置相对父级元素定位

    layer弹出层默认是相对body固定定位的,可是项目中一般需要相对某个盒子相对定位,下面是个加载弹层例子: var loadIndex = layer.open({ type: 3, //3 表示加 ...

  10. layer弹出层扩展自定义样式

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

最新文章

  1. 使用硬盘,安装双系统,Win7+CentOS
  2. oracle驱动程序包的安装失败,Maven 、oracle的jdbc的jar包下载失败
  3. 电脑文档提示无法连接服务器,提示无法将数据库连接到SQL服务器-工业支持中心-西门子中国...
  4. 递归思想完成n皇后问题
  5. Java注解学习一:注解术语
  6. 线性表:3.链表,单链表详解与C语言实现
  7. 马斯克认怂和解,特斯拉股价大涨17%,市值回涨78亿美元
  8. python学习_Python学习 基础篇完结
  9. vgcreate 创建卷组
  10. java调用iec61850_IEC61850开发实战(三)
  11. ios 简书 获取通讯录信息_ios 获取本地通讯录信息
  12. 婚恋职场人格-张晓文-武汉理工大学-中国MOOC-亲密关系测试题参考答案
  13. 配置urlrewrite不生效
  14. 【JS小知识】this的指向、工厂方法、构造函数及优化、prototype原型、forEach()的使用
  15. Excel拆分单元格内容(把一个单元格的内容拆分到多列)
  16. flowable modeler6.5.0集成spring boot
  17. python多线程抢红包代码_python实现的抢红包程序代码
  18. 极米和当贝投影仪应该怎样抉择?一文告诉你答案
  19. ./config.status --recheck 而发现的error的根因与解决方案
  20. 中国不承认国际驾驶证

热门文章

  1. JAVA反射机制Reflection详解
  2. ClassForName应用于工厂模式
  3. c9大学计算机系好的大学,C9顶尖高校所有自主招生专业大汇总
  4. win10和win8双系统安装
  5. oracle出现ora 12514,Oracle 11g ORA-12514 解决办法
  6. cydia软件路径_Cydia源目录结构解析
  7. 1、spring之Resource加载
  8. 【收藏防丢】rar压缩包忘记密码怎么办?手把手教你轻松解决
  9. STM32的IAP在线升级
  10. Kong 开源的服务网格Kuma爬过了K8S这座大山