首頁 >web前端 >js教程 >layui彈出層效果代碼分享

layui彈出層效果代碼分享

小云云
小云云原創
2018-01-11 16:59:242743瀏覽

layer是一款近年來備受青睞的web彈層組件,本文主要介紹了layui彈出層效果的實現代碼,具有一定的參考價值,有興趣的小伙伴們可以參考一下,希望能幫助到大家。

本文實例為大家分享了layui彈出層的具體程式碼,供大家參考,具體內容如下


<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>弹出层</title>
 <link rel="stylesheet" href="layui/css/layui.css" media="all">
 <link rel="stylesheet" href="css/global.css" media="all">
 </head>
 <body>
 <blockquote class="layui-elem-quote">
  大部分演示都在layer独立组件的官网,与内置的layer模块,用法是完全一致的
 </blockquote>
 <fieldset class="layui-elem-field layui-field-title site-demo-button" style="margin-top: 30px;">
  <legend>特殊例子</legend>
 </fieldset>

 <p class="site-demo-button" id="LAY_demo" style="margin-bottom: 0;">
  <blockquote class="layui-elem-quote layui-quote-nm">
  Tips:为了更清晰演示,每触发下述一个例子之前,都会关闭所有已经演示的层
  </blockquote>
  <button data-method="setTop" class="layui-btn">多窗口模式,层叠置顶</button>
  <button data-method="confirmTrans" class="layui-btn">配置一个透明的询问框</button>
  <button data-method="notice" class="layui-btn">示范一个公告层</button>
  <button data-method="offset" data-type="t" class="layui-btn layui-btn-normal">上弹出</button>
  <button data-method="offset" data-type="r" class="layui-btn layui-btn-normal">右弹出</button>
  <button data-method="offset" data-type="b" class="layui-btn layui-btn-normal">下弹出</button>
  <button data-method="offset" data-type="l" class="layui-btn layui-btn-normal">左弹出</button>
  <button data-method="offset" data-type="lt" class="layui-btn layui-btn-normal">左上弹出</button>
  <button data-method="offset" data-type="lb" class="layui-btn layui-btn-normal">左下弹出</button>
  <button data-method="offset" data-type="rt" class="layui-btn layui-btn-normal">右上弹出</button>
  <button data-method="offset" data-type="rb" class="layui-btn layui-btn-normal">右下弹出</button>
  <button data-method="offset" data-type="auto" class="layui-btn layui-btn-normal">居中弹出</button>
 </p>

 <p class="layui-elem-quote" style="margin-top: 20px;">
  <p>Layui - 精心为你雕琢</p>
 </p>

 <script src="layui/layui.js"></script>
 <script>
layui.use(&#39;layer&#39;, function(){ //独立版的layer无需执行这一句
 var $ = layui.jquery, layer = layui.layer; //独立版的layer无需执行这一句

 //触发事件
 var active = {
 setTop: function(){
 var that = this; 
 //多窗口模式,层叠置顶
 layer.open({
 type: 2 //此处以iframe举例
 ,title: &#39;当你选择该窗体时,即会在最顶端&#39;
 ,area: [&#39;390px&#39;, &#39;260px&#39;]
 ,shade: 0
 ,maxmin: true
 ,offset: [ //为了演示,随机坐标
  Math.random()*($(window).height()-300)
  ,Math.random()*($(window).width()-390)
 ] 
 ,content: &#39;http://layer.layui.com/test/settop.html&#39;
 ,btn: [&#39;继续弹出&#39;, &#39;全部关闭&#39;] //只是为了演示
 ,yes: function(){
  $(that).click(); 
 }
 ,btn2: function(){
  layer.closeAll();
 }

 ,zIndex: layer.zIndex //重点1
 ,success: function(layero){
  layer.setTop(layero); //重点2
 }
 });
 }
 ,confirmTrans: function(){
 //配置一个透明的询问框
 layer.msg(&#39;大部分参数都是可以公用的<br>合理搭配,展示不一样的风格&#39;, {
 time: 20000, //20s后自动关闭
 btn: [&#39;明白了&#39;, &#39;知道了&#39;, &#39;哦&#39;]
 });
 }
 ,notice: function(){
 //示范一个公告层
 layer.open({
 type: 1
 ,title: false //不显示标题栏
 ,closeBtn: false
 ,area: &#39;300px;&#39;
 ,shade: 0.8
 ,id: &#39;LAY_layuipro&#39; //设定一个id,防止重复弹出
 ,btn: [&#39;火速围观&#39;, &#39;残忍拒绝&#39;]
 ,moveType: 1 //拖拽模式,0或者1
 ,content: &#39;<p style="padding: 50px; line-height: 22px; background-color: #393D49; color: #fff; font-weight: 300;">你知道吗?亲!<br>layer ≠ layui<br><br>layer只是作为Layui的一个弹层模块,由于其用户基数较大,所以常常会有人以为layui是layerui<br><br>layer虽然已被 Layui 收编为内置的弹层模块,但仍然会作为一个独立组件全力维护、升级。<br><br>我们此后的征途是星辰大海 ^_^</p>&#39;
 ,success: function(layero){
  var btn = layero.find(&#39;.layui-layer-btn&#39;);
  btn.css(&#39;text-align&#39;, &#39;center&#39;);
  btn.find(&#39;.layui-layer-btn0&#39;).attr({
  href: &#39;http://www.layui.com/&#39;
  ,target: &#39;_blank&#39;
  });
 }
 });
 }
 ,offset: function(othis){
 var type = othis.data(&#39;type&#39;)
 ,text = othis.text();

 layer.open({
 type: 1
 ,offset: type //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset
 ,id: &#39;LAY_demo&#39;+type //防止重复弹出
 ,content: &#39;<p style="padding: 20px 100px;">&#39;+ text +&#39;</p>&#39;
 ,btn: &#39;关闭全部&#39;
 ,btnAlign: &#39;c&#39; //按钮居中
 ,shade: 0 //不显示遮罩
 ,yes: function(){
  layer.closeAll();
 }
 });
 }
 };

 $(&#39;#LAY_demo .layui-btn&#39;).on(&#39;click&#39;, function(){
 var othis = $(this), method = othis.data(&#39;method&#39;);
 active[method] ? active[method].call(this, othis) : &#39;&#39;;
 });

});
</script>
 </body>
</html>

效果圖:

相關推薦:

##jQuery、layer實作彈出層的開啟、關閉功能實例詳解

js實作關閉js彈出層的視窗功能代碼

jQuery實作點擊任意位置彈出層外關閉彈出層效果#

以上是layui彈出層效果代碼分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn