栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

layui实现左侧菜单点击右侧内容区显示

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

layui实现左侧菜单点击右侧内容区显示

layui这个前端框架对后端人员来说提供了极大的方便,很大一部分同学在刚接触到这个框架就迫不及待的要动手实践了,刚好最近需要开发一个后台管理项目,就拿layui来进行学习和实践。

还没有接触到的同学可以先通读一遍文档,这样在遇到问题的时候才能够对症下药,仔细研究相关的板块
今天我们先来学习一下使用layui来实现左侧点击菜单,内容区显示tab

实验效果

实现过程

html代码




 
 
 
 <?php echo $curTitle;?>
 



 
 XXXX业务管理平台
 
  • 欢迎光临,商户001
  • 安全退出
  • 管理员管理
    管理员列表
    管理员日志
  • 交易管理
    存款列表
    代付列表
  • 系统管理
    支付API设置
    公告设置
    控制台
    © sunway.tk XXXX业务管理平台

    javascript代码:

    layui.use(['element', 'layer', 'jquery'], function () {
     var element = layui.element;
     // var layer = layui.layer;
     var $ = layui.$;
     // 配置tab实践在下面无法获取到菜单元素
     $('.site-demo-active').on('click', function () {
     var dataid = $(this);
     //这时会判断右侧.layui-tab-title属性下的有lay-id属性的li的数目,即已经打开的tab项数目
     if ($(".layui-tab-title li[lay-id]").length <= 0) {
     //如果比零小,则直接打开新的tab项
     active.tabAdd(dataid.attr("data-url"), dataid.attr("data-id"), dataid.attr("data-title"));
     } else {
     //否则判断该tab项是否以及存在
     var isData = false; //初始化一个标志,为false说明未打开该tab项 为true则说明已有
     $.each($(".layui-tab-title li[lay-id]"), function () {
      //如果点击左侧菜单栏所传入的id 在右侧tab项中的lay-id属性可以找到,则说明该tab项已经打开
      if ($(this).attr("lay-id") == dataid.attr("data-id")) {
      isData = true;
      }
     })
     if (isData == false) {
      //标志为false 新增一个tab项
      active.tabAdd(dataid.attr("data-url"), dataid.attr("data-id"), dataid.attr("data-title"));
     }
     }
     //最后不管是否新增tab,最后都转到要打开的选项页面上
     active.tabChange(dataid.attr("data-id"));
     });
    
     var active = {
     //在这里给active绑定几项事件,后面可通过active调用这些事件
     tabAdd: function (url, id, name) {
     //新增一个Tab项 传入三个参数,分别对应其标题,tab页面的地址,还有一个规定的id,是标签中data-id的属性值
     //关于tabAdd的方法所传入的参数可看layui的开发文档中基础方法部分
     element.tabAdd('demo', {
      title: name,
      content: '',
      id: id //规定好的id
     })
     frameWH(); //计算ifram层的大小
     },
     tabChange: function (id) {
     //切换到指定Tab项
     element.tabChange('demo', id); //根据传入的id传入到指定的tab项
     },
     tabDelete: function (id) {
     element.tabDelete("demo", id);//删除
     }
     };
     function frameWH() {
     var h = $(window).height();
     $("iframe").css("height",h+"px");
     }
     });
    
    

    实现逻辑:动态判断所点击的菜单元素,利用元素上设置的data属性值,在右侧内容区生成页面iframe进行动态显示
    参考文献:layui官网

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

    转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/74585.html
    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号