增加单页应用的layui-admin

This commit is contained in:
2024-01-22 12:22:41 +08:00
parent acf64a0c71
commit 1b2929f32e
344 changed files with 21782 additions and 3 deletions

View File

@@ -0,0 +1,480 @@
<title>layer 组件功能演示</title>
<div class="layui-card layadmin-header">
<div class="layui-breadcrumb" lay-filter="breadcrumb">
<a lay-href="">主页</a>
<a><cite>组件</cite></a>
<a href="http://www.baidu.com/" target="_blank">layer</a>
<a><cite>功能演示</cite></a>
</div>
</div>
<style>
/* 这段样式只是用于演示 */
#LAY-component-layer-list .layui-card-body{padding-top: 15px;}
</style>
<div class="layui-fluid" id="LAY-component-layer-list">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">弹层类型</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test1">Alert</button>
<button class="layui-btn layui-btn-primary" data-type="test2">Confirm</button>
<button class="layui-btn layui-btn-primary" data-type="test3">Msg</button>
<button class="layui-btn layui-btn-primary" data-type="test4">Tips</button>
<button class="layui-btn layui-btn-primary" data-type="test5">Page</button>
<button class="layui-btn layui-btn-primary" data-type="test6">Iframe</button>
<button class="layui-btn layui-btn-primary" data-type="test7">Prompt</button>
<button class="layui-btn layui-btn-primary" data-type="test8">Tab</button>
<button class="layui-btn layui-btn-primary" data-type="test9">Photos</button>
</div>
</div>
</div>
<div class="layui-card">
<div class="layui-card-header">常规使用</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test10">信息框</button>
<button class="layui-btn layui-btn-primary" data-type="test11">询问层</button>
<button class="layui-btn layui-btn-primary" data-type="test12">提示层</button>
<button class="layui-btn layui-btn-primary" data-type="test13">墨绿深蓝风</button>
<button class="layui-btn layui-btn-primary" data-type="test14">捕获页</button>
<button class="layui-btn layui-btn-primary" data-type="test15">页面层</button>
<button class="layui-btn layui-btn-primary" data-type="test16">自定风格</button>
<button class="layui-btn layui-btn-primary" data-type="test17">tips层1</button>
<button class="layui-btn layui-btn-primary" data-type="test18">tips层2</button>
<button class="layui-btn layui-btn-primary" data-type="test19">iframe层</button>
<button class="layui-btn layui-btn-primary" data-type="test20">iframe窗</button>
<button class="layui-btn layui-btn-primary" data-type="test21">加载层1</button>
<button class="layui-btn layui-btn-primary" data-type="test22">加载层2</button>
<button class="layui-btn layui-btn-primary" data-type="test23">prompt层</button>
<button class="layui-btn layui-btn-primary" data-type="test8">tab层</button>
<button class="layui-btn layui-btn-primary" data-type="test9">相册层</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">信息框</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test26">例1</button>
<button class="layui-btn layui-btn-primary" data-type="test27">例2</button>
<button class="layui-btn layui-btn-primary" data-type="test28">例3</button>
<button class="layui-btn layui-btn-primary" data-type="test29">例4</button>
<button class="layui-btn layui-btn-primary" data-type="test30">例5</button>
<button class="layui-btn layui-btn-primary" data-type="test31">例6</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">页面层与iframe层</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test33">自定义页面</button>
<button class="layui-btn layui-btn-primary" data-type="test35" id="LAY_layer_iframe_demo">iframe父子通讯</button>
<button class="layui-btn layui-btn-primary" data-type="test36">禁止iframe滚动条</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">加载层</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test37">风格1</button>
<button class="layui-btn layui-btn-primary" data-type="test38">风格2</button>
<button class="layui-btn layui-btn-primary" data-type="test39">风格3</button>
<button class="layui-btn layui-btn-primary" data-type="test40">风格4</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">tips层</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test41">显示在上</button>
<button class="layui-btn layui-btn-primary" data-type="test42">显示在右</button>
<button class="layui-btn layui-btn-primary" data-type="test43">显示在下</button>
<button class="layui-btn layui-btn-primary" data-type="test44">显示在左</button>
<button class="layui-btn layui-btn-primary" data-type="test45">不销毁上一个tips</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">其它示例</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button class="layui-btn layui-btn-primary" data-type="test47">最大化弹出</button>
<button class="layui-btn layui-btn-primary" data-type="test48">显示在正上方</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
layui.use(['admin', 'layer'], function(){
var $ = layui.$
,admin = layui.admin
,element = layui.element
,layer = layui.layer;
element.render();
/* 触发弹层 */
var active = {
test1: function(){
layer.alert('你好,体验者');
}
,test2: function(){
layer.confirm('您是如何看待前端开发?', {
btn: ['重要','奇葩'] //按钮
}, function(){
layer.msg('的确很重要', {icon: 1});
}, function(){
layer.msg('也可以这样', {
time: 20000, //20s后自动关闭
btn: ['明白了', '知道了']
});
});
}
,test3: function(){
layer.msg('玩命提示中');
}
,test4: function(){
layer.tips('Hi我是一个提示', this, {tips: 1});
}
,test5: function(){
layer.open({
title:'页面层'
,type: 1
//,skin: 'layui-layer-rim'
,shadeClose: true
,area: admin.screen() < 2 ? ['80%', '300px'] : ['700px', '500px']
,content: '<div style="padding: 20px;">放入任意HTML</div>'
});
}
,test6: function(){
layer.open({
type: 2
,content: 'https://cn.bing.com/'
,shadeClose: true
,area: admin.screen() < 2 ? ['100%', '80%'] : ['375px', '500px']
,maxmin: true
});
}
,test7: function(){
layer.prompt({title: '输入任何口令,并确认', formType: 1}, function(pass, index){
layer.close(index);
layer.prompt({title: '随便写点啥,并确认', formType: 2}, function(text, index){
layer.close(index);
layer.msg('演示完毕!您的口令:'+ pass +'<br>您最后写下了:'+text);
});
});
}
,test8: function(){
layer.tab({
area: admin.screen() < 2 ? ['100%', '80%'] : ['600px', '300px'],
tab: [{
title: 'TAB1',
content: '<div style="padding:20px;">内容1</div>'
}, {
title: 'TAB2',
content: '<div style="padding:20px;">内容2</div>'
}]
});
}
,test9: function(){
$.getJSON('./res/json/layer/photos.js', function(json){
layer.photos({
photos: json //格式见API文档手册页
});
});
}
,test10: function(){
var icon = -1;
(function changeIcon(){
var index = layer.alert('Hi你好 点击确认更换图标', {
icon: icon,
shadeClose: true,
title: icon === -1 ? '初体验 - layer '+layer.v : 'icon'+icon + ' - layer '+layer.v
}, changeIcon);
if(8 === ++icon) layer.close(index);
}());
}
,test11: function(){
layer.confirm('真的吗?', function(index){
layer.msg('哦')
layer.close(index);
});
}
,test12: function(){
layer.msg('玩了命提示中');
}
,test13: function(){
//墨绿深蓝风
layer.alert('墨绿风格,点击确认看深蓝', {
skin: 'layui-layer-molv'
,closeBtn: 0
}, function(){
layer.alert('偶吧深蓝style', {
skin: 'layui-layer-lan'
,closeBtn: 0
,anim: 4
});
});
}
,test14: function(){
layer.open({
type: 1,
shade: false,
title: false,
content: $('.demo-component-layer'),
cancel: function(){
setTimeout(function(){
layer.tips('捕获就是从页面已经存在的元素上,包裹 layer 的结构,从而弹出显示。是不是比较好玩呢?', '.demo-component-layer', {
tips: 3, time: 5000
});
}, 300);
}
});
}
,test15: function(){
layer.open({
type: 1,
skin: 'layui-layer-rim',
area: ['420px', '240px'],
content: '<div style="padding: 10px;">任意html内容</div>'
});
}
,test16: function(){
layer.open({
type: 1,
skin: 'layui-layer-admin',
closeBtn: false,
area: '350px',
anim: 5,
shadeClose: true,
content: '<div style="padding:20px;">即传入skin:"样式名",然后你就可以为所欲为了。你怎么样给她整容都行</div>'
});
}
,test17: function(){
layer.tips('Hi我是tips', this, {
tips: 1
});
}
,test18: function(){
layer.tips('我是另外一个tips只不过我长得跟之前那位稍有些不一样。', this, {
tips: [3, '#2F9688'],
time: 4000
});
}
,test19: function(){
layer.open({
type: 2,
title: '必应',
shadeClose: true,
shade: 0.8,
area: ['375px', '500px'],
content: 'https://cn.bing.com/'
});
}
,test20: function(){
layer.open({
type: 2,
title: '必应',
shade: false,
maxmin: true,
area: ['90%', '90%'],
content: 'https://cn.bing.com/'
});
}
,test21: function(){
var ii = layer.load(0, {shade: false});
setTimeout(function(){
layer.close(ii)
}, 3000);
}
,test22: function(){
var iii = layer.load(1, {
shade: [0.1,'#fff']
});
setTimeout(function(){
layer.close(iii)
}, 3000);
}
,test23: function(){
layer.prompt({title: '写点什么吧'}, function(value, index){
layer.msg('你写下了:'+ value, {
icon: 6
,shade: 0.9
}, function(){
layer.close(index);
});
});
}
,test26: function(){
layer.alert('见到你真的很高兴', {icon: 6});
}
,test27: function(){
layer.msg('一个询问测试?', {
time: 0 //不自动关闭
,btn: ['确定', '关闭']
,yes: function(index){
layer.close(index);
layer.msg('自定义按钮 O.o', {
icon: 6
,time: 0
,btn: ['按钮-1','按钮-2','按钮-3']
});
}
});
}
,test28: function(){
layer.msg('这是最常用的吧');
}
,test29: function(){
layer.msg('并不十分开心。。', {icon: 5});
}
,test30: function(){
layer.msg('玩命卖萌中', function(){
layer.msg('卖完了');
});
}
,test31: function(){
layer.confirm('真的删除吗?', function(){
layer.msg('正在删除', {icon: 16}, function(){
layer.msg('成功删除', {icon: 1})
});
});
}
,test33: function(){
layer.open({
type: 1,
title: false,
closeBtn: 0,
shadeClose: true,
skin: 'yourClass',
content: '<div style="padding: 20px; width: 260px; height: 180px;">自定义HTML内容</div>'
});
}
,test35: function(){
layer.open({
type: 2,
area: ['700px', '450px'],
fixed: false,
maxmin: true,
content: layui.setter.paths.base + 'views/iframe/layer/iframe.html'
});
}
,test36: function(){
layer.open({
type: 2,
area: ['360px', '500px'],
skin: 'layui-layer-rim',
content: ['https://cn.bing.com/', 'no']
});
}
,test37: function(){
layer.load();
setTimeout(function(){
layer.closeAll('loading');
}, 2000);
}
,test38: function(){
layer.load(1);
setTimeout(function(){
layer.closeAll('loading');
}, 2000);
}
,test39: function(){
layer.load(2);
setTimeout(function(){
layer.closeAll('loading');
}, 2000);
}
,test40: function(){
layer.msg('加载中', {
icon: 16
,shade: 0.01
});
}
,test41: function(){
layer.tips('上', this, {
tips: [1, '#000']
});
}
,test42: function(){
layer.tips('默认就是向右的3秒后关闭', this);
}
,test43: function(){
layer.tips('下', this, {
tips: 3
});
}
,test44: function(){
layer.tips('在很久很久以前,在很久很久以前,在很久很久以前……', this, {
tips: [4, '#78BA32']
});
}
,test45: function(){
layer.tips('不会销毁之前的', this, {tipsMore: true});
}
,test47: function(){
var index = layer.open({
type: 2,
content: 'http://baidu.com',
area: ['300px', '300px'],
maxmin: true
});
layer.full(index);
}
,test48: function(){
layer.msg('灵活运用 offset', {
offset: 't',
anim: 6
});
}
};
$('#LAY-component-layer-list .layadmin-layer-demo .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] && active[type].call(this);
});
});
</script>

View File

@@ -0,0 +1,242 @@
<title>layer 组件特殊示例</title>
<div class="layui-card layadmin-header">
<div class="layui-breadcrumb" lay-filter="breadcrumb">
<a lay-href="">主页</a>
<a><cite>组件</cite></a>
<a href="http://www.baidu.com/" target="_blank">layer</a>
<a><cite>特殊示例</cite></a>
</div>
</div>
<style>
/* 这段样式只是用于演示 */
#LAY-component-layer-special-demo .layui-card-body{padding-top: 15px;}
</style>
<div class="layui-fluid" id="LAY-component-layer-special-demo">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">场景</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button data-method="setTop" class="layui-btn layui-btn-primary">多窗口模式,层叠置顶 / Esc 关闭</button>
<button data-method="confirmTrans" class="layui-btn layui-btn-primary">配置一个透明的询问框</button>
<button data-method="notice" class="layui-btn layui-btn-primary">示范一个公告层</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">坐标</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button data-method="offset" data-type="t" class="layui-btn layui-btn-primary">上弹出</button>
<button data-method="offset" data-type="r" class="layui-btn layui-btn-primary">右弹出</button>
<button data-method="offset" data-type="b" class="layui-btn layui-btn-primary">下弹出</button>
<button data-method="offset" data-type="l" class="layui-btn layui-btn-primary">左弹出</button>
<button data-method="offset" data-type="lt" class="layui-btn layui-btn-primary">左上弹出</button>
<button data-method="offset" data-type="lb" class="layui-btn layui-btn-primary">左下弹出</button>
<button data-method="offset" data-type="rt" class="layui-btn layui-btn-primary">右上弹出</button>
<button data-method="offset" data-type="rb" class="layui-btn layui-btn-primary">右下弹出</button>
<button data-method="offset" data-type="auto" class="layui-btn layui-btn-primary">居中弹出</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">抽屉</div>
<div class="layui-card-body">
<p style="line-height: 32px;">从页面四个边缘弹出(抽屉效果):</p>
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-offset-t">从上往下</button>
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-offset-r">从右往左</button>
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-offset-b">从下往上</button>
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-offset-l">从左往右</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
layui.use(['admin'], function(){
var $ = layui.$;
var admin = layui.admin;
var element = layui.element;
var util = layui.util;
var router = layui.router();
element.render();
var active = {
setTop: function(){
var that = this;
//多窗口模式,层叠置顶
layer.open({
type: 1 //此处以iframe举例
,title: '当你选择该窗体时,即会在最顶端'
,area: ['390px', '260px']
,shade: 0
,maxmin: true
,offset: [ //为了演示,随机坐标
Math.random()*($(window).height()-300)
,Math.random()*($(window).width()-390)
]
,content: '<div style="padding: 15px;">内容标记:'+ new Date().getTime() + ',按 ESC 键可关闭。<br><br>当你的页面有很多很多 layer 窗口,你需要像 Window 窗体那样,点击某个窗口,该窗体就置顶在上面,那么 layer.setTop() 可以来轻松实现。它采用巧妙的逻辑,以使这种置顶的性能达到最优。</div>'
,btn: ['继续弹出', '全部关闭'] //只是为了演示
,yes: function(){
$(that).click();
}
,btn2: function(){
layer.closeAll();
}
,zIndex: layer.zIndex //重点1
,success: function(layero, index){
layer.setTop(layero); //重点2. 保持选中窗口置顶
//记录索引,以便按 esc 键关闭。事件见代码最末尾处。
layer.escIndex = layer.escIndex || [];
layer.escIndex.unshift(index);
//选中当前层时,将当前层索引放置在首位
layero.on('mousedown', function(){
var _index = layer.escIndex.indexOf(index);
if(_index !== -1){
layer.escIndex.splice(_index, 1); //删除原有索引
}
layer.escIndex.unshift(index); //将索引插入到数组首位
});
}
,end: function(){
//更新索引
if(typeof layer.escIndex === 'object'){
layer.escIndex.splice(0, 1);
}
}
});
}
,confirmTrans: function(){
layer.closeAll();
layer.msg('大部分参数都是可以公用的<br>合理搭配,展示不一样的风格', {
time: 20*1000,
btn: ['明白了', '知道了', '哦']
});
}
,notice: function(){
layer.closeAll();
layer.open({
type: 1
,title: false
,closeBtn: false
,area: '300px;'
,shade: 0.8
,id: 'LAY_layuipro'
,btn: ['火速围观', '残忍拒绝']
,btnAlign: 'c'
,moveType: 1 //拖拽模式0或者1
,content: '<div style="padding: 50px; line-height: 22px; background-color: #393D49; color: #fff; font-weight: 300;">你知道吗?亲!<br>layer ≠ layui<br><br> layer 只是作为 layui 的一个弹层模块,由于其用户基数较大,所以常常会有人以为 layui 是 <del>layerui</del><br><br>layer 虽然已被 layui 收编为内置的弹层模块,但仍然会作为一个独立组件全力维护、升级 ^_^</div>'
,success: function(layero){
var btn = layero.find('.layui-layer-btn');
btn.find('.layui-layer-btn0').attr({
href: ''
,target: '_blank'
});
}
});
}
,offset: function(othis){
var type = othis.data('type')
,text = othis.text();
layer.open({
type: 1
,offset: type
,id: 'layerDemo'+type
,content: '<div style="padding: 20px 100px;">'+ text +'</div>'
,btn: '关闭全部'
,btnAlign: 'c'
,shade: 0
,yes: function(){
layer.closeAll();
}
});
}
};
$('#LAY-component-layer-special-demo .layadmin-layer-demo .layui-btn').on('click', function(){
var othis = $(this), method = othis.data('method');
active[method] ? active[method].call(this, othis) : '';
});
//多窗口模式 - esc 键
$(document).on('keyup', function(e){
if(e.keyCode === 27){
layer.close(layer.escIndex ? layer.escIndex[0] : 0);
}
});
// util 事件
util.on('lay-on', {
'test-offset-t': function(){
layer.open({
type: 1,
offset: 't',
anim: 'slideDown', // 从上往下
area: ['100%', '160px'],
shade: 0.1,
shadeClose: true,
id: 'ID-demo-layer-direction-t',
content: '<div style="padding: 16px;">任意 HTML 内容</div>'
});
},
'test-offset-r': function(){
layer.open({
type: 1,
offset: 'r',
anim: 'slideLeft', // 从右往左
area: ['320px', '100%'],
shade: 0.1,
shadeClose: true,
id: 'ID-demo-layer-direction-r',
content: '<div style="padding: 16px;">任意 HTML 内容</div>'
});
},
'test-offset-b': function(){
layer.open({
type: 1,
offset: 'b',
anim: 'slideUp', // 从下往上
area: ['100%', '160px'],
shade: 0.1,
shadeClose: true,
id: 'ID-demo-layer-direction-b',
content: '<div style="padding: 16px;">任意 HTML 内容</div>'
});
},
'test-offset-l': function(){
layer.open({
type: 1,
offset: 'l',
anim: 'slideRight', // 从左往右
area: ['320px', '100%'],
shade: 0.1,
shadeClose: true,
id: 'ID-demo-layer-direction-l',
content: '<div style="padding: 16px;">任意 HTML 内容</div>'
});
}
});
});
</script>

View File

@@ -0,0 +1,122 @@
<title>layer 组件风格定制</title>
<div class="layui-card layadmin-header">
<div class="layui-breadcrumb" lay-filter="breadcrumb">
<a lay-href="">主页</a>
<a><cite>组件</cite></a>
<a href="http://www.baidu.com/" target="_blank">layer</a>
<a><cite>风格定制</cite></a>
</div>
</div>
<style>
/* 这段样式只是用于演示 */
#LAY-component-layer-theme .layui-card-body{padding-top: 15px;}
</style>
<div class="layui-fluid" id="LAY-component-layer-theme">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">Windows 10 风格</div>
<div class="layui-card-body">
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-skin-win10">
Windows 10 风格信息框 <span class="layui-badge-dot"></span>
</button>
<button type="button" class="layui-btn layui-btn-primary" lay-on="test-skin-win10-page">
Win10 风格页面层 <span class="layui-badge-dot"></span>
</button>
</div>
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">风格定制</div>
<div class="layui-card-body">
<div class="layui-btn-container layadmin-layer-demo">
<button data-type="test1" class="layui-btn layui-btn-primary">layuiAdmin 风格</button>
<button data-type="test2" class="layui-btn layui-btn-primary">右侧呼出</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
layui.use(['admin'], function(){
var $ = layui.$;
var admin = layui.admin;
var element = layui.element;
var util = layui.util;
var router = layui.router();
element.render();
var active = {
test1: function(){
admin.popup({
title: 'layuiAdmin'
,shade: 0
,anim: -1
,area: ['280px', '150px']
,id: 'layadmin-layer-skin-test'
,skin: 'layui-anim layui-anim-upbit'
,content: '内容'
})
}
,test2: function(){
admin.popupRight({
id: 'LAY_adminPopupLayerTest'
,success: function(){
$('#'+ this.id).html('<div style="padding: 20px;">放入内容</div>');
//admin.view(this.id).render('system/xxx')
}
});
}
};
$('#LAY-component-layer-theme .layadmin-layer-demo .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] && active[type].call(this);
});
// util 事件
util.on('lay-on', {
'test-skin-win10': function(){
layer.alert('Windows 10 风格主题', {
skin: 'layui-layer-win10', // 2.8+
shade: 0.01,
btn: ['确定', '取消']
})
},
'test-skin-win10-page': function(){
// 此处以一个简单的 Win10 风格记事本为例
layer.open({
type: 1, // 页面层类型
skin: 'layui-layer-win10', // 2.8+
shade: 0.01,
area: ['50%', '60%'],
maxmin: true,
title: '*无标题 - 记事本',
content: [
'<div style="padding: 0 8px; height: 20px; line-height: 20px; border-bottom: 1px solid #F0F0F0; box-sizing: border-box; font-size: 12px;">',
// 自定义菜单,此处仅作样式演示,具体功能可自主实现
[
'<a href="javascript:;">文件(F)</a>',
'<a href="javascript:;" >编辑(E)</a> ',
'<a href="javascript:;" >格式(O)</a> ',
'<a href="javascript:;" >查看(V)</a> ',
'<a href="javascript:;" >帮助(H)</a> ',
].join(' '),
'</div>',
'<textarea style="position: absolute; top: 20px; width: 100%; height: calc(100% - 20px); padding: 6px; border: none; resize: none; overflow-y: scroll; box-sizing: border-box;"></textarea>'
].join('')
});
}
});
});
</script>