layui选项卡演示

简介: layui选项卡演示

在前端开发中,选项卡常用于展示多个内容模块,提供用户友好的界面交互方式。layui作为一款简洁易用的前端框架,提供了丰富的组件库,其中包括了强大且易用的选项卡组件。

本文将介绍layui选项卡的基本用法以及常用功能,并通过实例演示具体步骤。

.1 引入layui

首先,我们需要在HTML文件中引入layui的相关文件。可以从layui的官方网站下载最新版本的layui,并将其解压到项目目录中。然后,在HTML文件的标签内添加以下代码:

html
<link rel="stylesheet" href="path/to/layui/css/layui.css">
<script src="path/to/layui/layui.js"></script>

2. 选项卡演示实列

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
     <%@ include file = "common/header.jsp" %>
<!DOCTYPE html >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<div class="layui-layout layui-layout-admin">
  <div class="layui-header">
    <div class="layui-logo layui-hide-xs layui-bg-black">layout demo</div>
    <!-- 头部区域(可配合layui 已有的水平导航) -->
    <ul class="layui-nav layui-layout-left">
    </ul>
    <!-- 个人头像及账号操作 -->
    <ul class="layui-nav layui-layout-right">
      <li class="layui-nav-item layui-hide layui-show-md-inline-block">
        <a href="javascript:;">
          <img src="//tva1.sinaimg.cn/crop.0.0.118.118.180/5db11ff4gw1e77d3nqrv8j203b03cweg.jpg" class="layui-nav-img">
          tester
        </a>
        <dl class="layui-nav-child">
          <dd><a href="">Your Profile</a></dd>
          <dd><a href="">Settings</a></dd>
          <dd><a href="login.jsp">Sign out</a></dd>
        </dl>
      </li>
      <li class="layui-nav-item" lay-header-event="menuRight" lay-unselect>
        <a href="javascript:;">
          <i class="layui-icon layui-icon-more-vertical"></i>
        </a>
      </li>
    </ul>
  </div>
  <div class="layui-side layui-bg-black">
    <div class="layui-side-scroll">
      <!-- 左侧导航区域(可配合layui已有的垂直导航) -->
      <ul id="menu" class="layui-nav layui-nav-tree" lay-filter="menu">
      </ul>
    </div>
  </div>
  <div class="layui-body">
    <!-- 内容主体区域 -->
    <div style="padding: 15px;">
<div class="layui-tab" lay-filter="demo" lay-allowclose="true">
  <ul class="layui-tab-title">
    <li class="layui-this" lay-id="11">网站设置</li>
    <li lay-id="22">用户管理</li>
    <li lay-id="33">权限分配</li>
    <li lay-id="44">商品管理</li>
    <li lay-id="55">订单管理</li>
  </ul>
  <div class="layui-tab-content">
    <div class="layui-tab-item layui-show">内容1</div>
    <div class="layui-tab-item">内容2</div>
    <div class="layui-tab-item">内容3</div>
    <div class="layui-tab-item">内容4</div>
    <div class="layui-tab-item">内容5</div>
  </div>
</div> 
    </div>
  </div>
  <div class="layui-footer">
    <!-- 底部固定区域 -->
            底部固定区域
  </div>
</div>
<script src="static/index.js" >
</script>
</body>
</html>

3.js分离的代码

var element,layer,util,$;
layui.use(['element', 'layer', 'util'], function(){
   element = layui.element
  ,layer = layui.layer
  ,util = layui.util
  ,$ = layui.$
  $.ajax({
      url:"{pageContext.request.contextPath}/permisson.action?methodName=menus",
      dataType:'json',
      success:function(data){
        console.log(data);   
       var htmlStr ='';
      $.each(data,function(i,n){
        htmlStr+='<li class="layui-nav-item layui-nav-itemed">';
        htmlStr+='<a class="" href="javascript:;">'+n.text+'</a>';
      if (n.hasChildren) {
        var children=n.children;
        htmlStr+=' <dl class="layui-nav-child">';
        $.each(children,function(idx,node){
          htmlStr+=' <dd><a href="javascript:;" onclick="openTab(\''+node.text+'\',\''+node.attributes.self.url+'\',\''+node.id +'\')">'+node.text+'</a></dd>';
          console.log(node.text);  
        });
        htmlStr+=' </dl>';
      }
        htmlStr+='</li>'; 
        console.log(n.text);   
      });
    $("#menu").html(htmlStr);
    element.render('menu');
        }
  });
});
/**
 * 
 */
function openTab(title,content,id) {
  var $node=$('li[lay-id="'+id+'"]')
  console.log($node);
  if ($node.length==0) {
     element.tabAdd('demo', {
            title: title
            ,content: content
            ,id: id //实际使用一般是规定好的id,这里以时间戳模拟下
          })
        }
  }

4运行结果

目录
相关文章
|
API 计算机视觉
Qt实用技巧:自定义窗口标题栏
Qt实用技巧:自定义窗口标题栏
Qt实用技巧:自定义窗口标题栏
|
Kubernetes Java API
在代码中使用SDK操作Istio资源二(Java篇)
如何在代码中使用SDK操作Istio资源
|
7月前
|
Linux 开发者
深入理解Linux I/O模型:同步、异步、阻塞与非阻塞
【8月更文挑战第1天】在探索操作系统的奥秘中,I/O模型作为影响性能的关键因素之一,常常让开发者们感到困惑。本文将通过浅显易懂的语言和实际代码示例,揭示Linux下同步与异步、阻塞与非阻塞的概念及其区别,并指导如何在实际应用中选择合适的I/O模型以优化程序性能。
216 1
|
10月前
|
Java
use of CGLib-based proxies by setting proxyTargetClass=true on @EnableAsync and/or @EnableCaching
use of CGLib-based proxies by setting proxyTargetClass=true on @EnableAsync and/or @EnableCaching
|
10月前
|
云安全 弹性计算 安全
Steam游戏服务器搭建好了,连接服务器错误,一直连不上服务器是什么问题,该怎么办?
Steam作为全球最大的数字游戏分发平台,拥有庞大的用户群体和丰富的游戏资源。然而,就像任何网络服务一样,Steam也偶尔会出现连接至服务器错误或连接问题,这可能导致用户无法顺利下载、更新游戏或进行在线游玩。本文将详细探讨这些连接问题的可能原因,并提供一系列有效的应对策略。
|
10月前
|
存储 SQL 关系型数据库
|
10月前
|
负载均衡 监控 安全
构建高效可靠的后端服务架构
在当今数字化时代,后端服务架构的设计和实现对于互联网企业至关重要。本文将介绍如何构建高效可靠的后端服务架构,涵盖了分布式系统、微服务架构、容器化部署等技术,并结合实际案例和最佳实践进行详细阐述。
196 0
|
前端开发 JavaScript Java
Layui的选项卡及菜单
Layui的选项卡及菜单
197 0
|
C++ 计算机视觉 Python
C++/Yolov8人体特征识别 广场室内 人数统计
这篇博客针对<<C++/Yolov8人体特征识别 广场室内 人数统计>>编写代码,代码整洁,规则,易读。 学习与应用推荐首选。
422 0
|
JavaScript 前端开发 数据安全/隐私保护
VueAdminWork再添一员开源框架,基于Arco design的中后台管理系统 Arco Work开源啦,感谢您的一路支持
VueAdminWork再添一员开源框架,基于Arco design的中后台管理系统 Arco Work开源啦,感谢您的一路支持
VueAdminWork再添一员开源框架,基于Arco design的中后台管理系统 Arco Work开源啦,感谢您的一路支持