php layer弹出层更改背景,详解Layer弹出层样式[通俗易懂]

php layer弹出层更改背景,详解Layer弹出层样式[通俗易懂]前言:学习layer弹出框,之前项目是用bootstrap模态框,后来改用layer弹出框,在文章的后面,我会分享项目的一些代码(我自己写的)。layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护、不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力。目前,layer已成为国内最多人使用的web弹层组件,GitHub自然…

大家好,又见面了,我是你们的朋友全栈君。

前言:学习layer弹出框,之前项目是用bootstrap模态框,后来改用layer弹出框,在文章的后面,我会分享项目的一些代码(我自己写的)。

layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护、不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力。目前,layer已成为国内最多人使用的web弹层组件,GitHub自然Stars3000+,官网累计下载量达30w+,大概有20万Web平台正在使用layer。 具体请移步layer官网,http://www.layui.com/doc/modules/layer.html

这篇博客会引用官网的一些内容,主要是写写layer的一些难点。比如如何用layer打开一个新的网页,content直接为一个网址就可以了,但是在你的项目中,这个网址又是啥??HTML的直接路径? 相对路径??都不是!! layer如何获取父界面的元素,比如我点击新增按钮,在layer框编辑后提交,是如何关闭当前layer框,额,关闭layer框很简单,但是如何关闭后根据父界面的form表单向后台发起Ajax请求,,刷新信息。即:layer子界面如何调用父界面的方法。

如果你不想使用Layui,而只是想使用layer,你可以去layer独立组件官网下载组件包。你需要在你的页面引入jQuery1.8以上的任意版本,并引入layer.js。

//弹出一个页面层

$(‘#test2’).on(‘click’, function(){

layer.open({

type: 1,

area: [‘600px’, ‘360px’],

shadeClose: true, //点击遮罩关闭

content: ‘\自定义内容\’

});

});

title – 标题

类型:String/Array/Boolean,默认:’信息’

title支持三种类型的值,若你传入的是普通的字符串,如title :’我是标题’,那么只会改变标题文本;若你还需要自定义标题区域样式,那么你可以title: [‘文本’, ‘font-size:18px;’],数组第二项可以写任意css样式;如果你不想显示标题栏,你可以title: false

content – 内容

类型:String/DOM/Array,默认:”

content可传入的值是灵活多变的,不仅可以传入普通的html内容,还可以指定DOM,更可以随着type的不同而不同。譬如:

/!*

如果是页面层

*/

layer.open({

type: 1,

content: ‘传入任意的文本或html’ //这里content是一个普通的String

});

layer.open({

type: 1,

content: $(‘#id’) //这里content是一个DOM,注意:最好该元素要存放在body最外层,否则可能被其它的相对元素所影响

});

//Ajax获取

$.post(‘url’, {}, function(str){

layer.open({

type: 1,

content: str //注意,如果str是object,那么需要字符拼接。

});

});

/!*

如果是iframe层

*/

layer.open({

type: 2,

content: ‘http://sentsin.com’ //这里content是一个URL,如果你不想让iframe出现滚动条,你还可以content: [‘http://sentsin.com’, ‘no’]

});

/!*

如果是用layer.open执行tips层

*/

layer.open({

type: 4,

content: [‘内容’, ‘#id’] //数组第二项即吸附元素选择器或者DOM

});

btn – 按钮

类型:String/Array,默认:’确认’

信息框模式时,btn默认是一个确认按钮,其它层类型则默认不显示,加载层和tips层则无效。当您只想自定义一个按钮时,你可以btn: ‘我知道了’,当你要定义两个按钮时,你可以btn: [‘yes’, ‘no’]。当然,你也可以定义更多按钮,比如:btn: [‘按钮1’, ‘按钮2’, ‘按钮3’, …],按钮1的回调是yes,而从按钮2开始,则回调为btn2: function(){},以此类推。如:

//eg1

layer.confirm(‘纳尼?’, {

btn: [‘按钮一’, ‘按钮二’, ‘按钮三’] //可以无限个按钮

,btn3: function(index, layero){

//按钮【按钮三】的回调

}

}, function(index, layero){

//按钮【按钮一】的回调

}, function(index){

//按钮【按钮二】的回调

});

//eg2

layer.open({

content: ‘test’

,btn: [‘按钮一’, ‘按钮二’, ‘按钮三’]

,yes: function(index, layero){

//按钮【按钮一】的回调

}

,btn2: function(index, layero){

//按钮【按钮二】的回调

//return false 开启该代码可禁止点击该按钮关闭

}

,btn3: function(index, layero){

//按钮【按钮三】的回调

//return false 开启该代码可禁止点击该按钮关闭

}

,cancel: function(){

//右上角关闭回调

//return false 开启该代码可禁止点击该按钮关闭

}

});

success – 层弹出后的成功回调方法

类型:Function,默认:null

当你需要在层创建完毕时即执行一些语句,可以通过该回调。success会携带两个参数,分别是当前层DOM当前层索引。如:

layer.open({

content: ‘测试回调’,

success: function(layero, index){

console.log(layero, index);

}

});

yes -确定按钮回调方法

类型:Function,默认:null

该回调携带两个参数,分别为当前层索引、当前层DOM对象。如:

layer.open({

content: ‘测试回调’,

yes: function(index, layero){

//do something

layer.close(index); //如果设定了yes回调,需进行手工关闭

}

});

cancel – 右上角关闭按钮触发的回调

类型:Function,默认:null

该回调携带两个参数,分别为:当前层索引参数(index)、当前层的DOM对象(layero),默认会自动触发关闭。如果不想关闭,return false即可,如;

cancel: function(index, layero){

if(confirm(‘确定要关闭么’)){ //只有当点击confirm框的确定时,该层才会关闭

layer.close(index)

}

return false;

}

end – 层销毁后触发的回调

类型:Function,默认:null

无论是确认还是取消,只要层被销毁了,end都会执行,不携带任何参数。

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

由于我们的layer内置了轻量级加载器,所以你根本不需要单独引入css等文件。但是加载总是需要过程的。当你在页面一打开就要执行弹层时,你最好是将弹层放入ready方法中,如:

//页面一打开就执行弹层

layer.ready(function(){

layer.msg(‘很高兴一开场就见到你’);

});

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.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弹出框与关闭layer弹出框的方法(代码周一给出, 现在手头没有代码)

总结

以上所述是小编给大家介绍的详解Layer弹出层样式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158642.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hive数据库数据类型_hive decimal类型

    hive数据库数据类型_hive decimal类型下面介绍几种常用的数据类(1)CHAR()该数据类型用于定义固定长度的字符串,其中用于指定字符串的最大长度,必须是正整数且不超过32767。使用CHAR类型定义变量时,如果没有指定则默认值为1。需要注意的是,在PL/SQL块中,使用该数据类型操纵CHAR表列时,其数值的长度不应超过2000字节。(2)VARCHAR2()该数据类型用于定义可变长度的字符串,其中用于指定字符串的最大长度,必须是正整数且不超过32767。使用VARCHAR2类型定义变量时,必须指定的值。需要注意的是,在P…

    2022年9月21日
    2
  • cmd 里面运行git提示“不是内部或外部命令,也不是可运行的程序”的解决办法…「建议收藏」

    cmd 里面运行git提示“不是内部或外部命令,也不是可运行的程序”的解决办法…

    2022年2月8日
    248
  • 小树311_森林小道

    小树311_森林小道原题链接森森开了一家快递公司,叫森森快递。因为公司刚刚开张,所以业务路线很简单,可以认为是一条直线上的N个城市,这些城市从左到右依次从0到(N−1)编号。由于道路限制,第i号城市(i=0,⋯,N−2)与第(i+1)号城市中间往返的运输货物重量在同一时刻不能超过C​i​​ 公斤。公司开张后很快接到了Q张订单,其中j张订单描述了某些指定的货物要从S​j​​ 号城市运输到T​j​​ 号城市。这里我们简单地假设所有货物都有无限货源,森森会不定时地挑选其中一部分货物进行运输。安全起见,这些货物不会在中

    2022年8月9日
    5
  • 倍增

    倍增法可以有很多变化。1.用data[i][j]记录从i到他的第2j个父亲的路径长度,就可以边求LCA边求出两点距离,因为data[i][j]满足倍增的递推式:data[i][j]=data[i][j-1]+data[fa[i][j-1]][j-1]。2.用maxlen[i][j]记录i到第2^j^个父亲的路径上最长边的边权,它满足…

    2022年4月9日
    45
  • mb10整流桥参数_kbp204整流桥参数

    mb10整流桥参数_kbp204整流桥参数编辑-ZMB10F在MBF-4封装里采用的4个芯片,其尺寸都是50MIL,是一款小方桥、贴片桥堆。MB10F的浪涌电流Ifsm为35A,漏电流(Ir)为5uA,其工作时耐温度范围为-55~150摄氏度。MB10F采用GPP芯片材质,里面有4颗芯片组成。MB10F的电性参数是:正向电流(Io)为1A,反向耐压为1000V,正向电压(VF)为1.0V,恢复时间(Trr)达到500ns,其中有4条引线。型号:MB10F封装:MBF-4(SOP-4)特性:小方桥、贴片桥堆、超薄体电性参数

    2022年8月24日
    11
  • Pytest(13)命令行参数–tb的使用「建议收藏」

    Pytest(13)命令行参数–tb的使用「建议收藏」前言pytest使用命令行执行用例的时候,有些用例执行失败的时候,屏幕上会出现一大堆的报错内容,不方便快速查看是哪些用例失败。–tb=style参数可以设置报错的时候回溯打印内容,可以设置参

    2022年7月30日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号