layer弹层插件使用示例在线demo,在线预览效果和参考代码。
hello,I'm layer!
以下参考代码:
// Alert ////////////////////
layer.alert('内容');
// alert(icon:1-6)
layer.alert('内容', {
icon: 1,
skin: 'layer-ext-moon' //该皮肤由layer.seaning.com友情扩展。关于皮肤的扩展规则,去这里查阅
});
//询问框 ////////////////////
layer.confirm('您是如何看待前端开发?', {
btn: ['重要','奇葩'] //按钮
}, function(){
layer.msg('的确很重要', {icon: 1});
}, function(){
layer.msg('也可以这样', {
time: 2000, //2s后自动关闭
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'), //捕获的元素,注意:最好该指定的元素要存放在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, //不显示关闭按钮
shift: 2,
area: ['420px', '240px'], //宽高
shadeClose: true, //开启遮罩关闭
content: '内容'
});
//tips层 ////////////////////
layer.tips('Hi,我是tips', $("#layer9"));
//iframe层 ////////////////////
layer.open({
type: 2,
title: 'layer mobile页',
shadeClose: true,
shade: 0.8,
area: ['380px', '90%'],
content: 'https://www.yj521.com' //iframe的url
});
//iframe窗 ////////////////////
layer.open({
type: 2,
title: false,
closeBtn: 0, //不显示关闭按钮
shade: [0],
area: ['340px', '215px'],
offset: 'auto', //右下角弹出
time: 2000, //2秒后自动关闭
shift: 2,
content: ['https://www.yj521.com', 'no'], //iframe的url,no代表不显示滚动条
end: function(){ //此处用于演示
layer.open({
type: 2,
title: '越加网',
shadeClose: true,
shade: false,
maxmin: true, //开启最大化最小化按钮
area: ['1150px', '650px'],
content: 'https://www.yj521.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,只不过我长得跟之前那位稍有些不一样。', $('#layer14'), {
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'
}]
});
//显示自动关闭倒计秒数 ////////////////////
layer.alert('在标题栏显示自动关闭倒计秒数', {
time: 5*1000
,success: function(layero, index){
var timeNum = this.time/1000, setText = function(start){
layer.title((start ? timeNum : --timeNum) + ' 秒后关闭', index);
};
setText(!0);
this.timer = setInterval(setText, 1000);
if(timeNum <= 0) clearInterval(this.timer);
}
,end: function(){
clearInterval(this.timer);
}
});
// iframe新页面 ////////////////////
layer.config({
extend: 'extend/layer.ext.js'
});
//页面一打开就执行,放入ready是为了layer所需配件(css、扩展模块)加载完毕
layer.ready(function(){
//官网欢迎页
layer.open({
type: 2,
skin: 'layui-layer-lan',
title: 'layer弹层组件',
fix: false,
shadeClose: true,
maxmin: true,
area: ['1000px', '500px'],
content: 'https://www.yj521.com'
});
layer.msg('欢迎使用layer');
});
// 关闭
var index = layer.load(2,{shade:false}); // 弹出层
layer.close(index);// 关闭加载层
// 关闭自己
self.close = function(){
// 先得到当前iframe层索引
var index = parent.layer.gelFrameIndex(window.name);
parent.layer.close(index);// 再执行关闭
}
//其他关闭
layer.closeAll();//暴力模式,关闭所有
layer.closeAll('dialog');//关闭信息框
layer.closeAll('page');//关闭所有页面层
layer.closeAll('iframe');//关闭所有iframe页面层
layer.closeAll('loading');//关闭加载层
layer.closeAll('tips');//关闭Tips层
//弹出的页面(子页面)里执行关闭父级弹出层
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.close(index); // 关闭layer