使用Thymeleaf设置导航栏选中后高亮

Thymeleaf核心原理与Spring Boot集成实战:从Web渲染到PDF生成 模板引擎是现代Web开发中分离视图与业务逻辑的核心组件,它通过预定义的语法将动态数据与静态模板结合,生成最终的HTML输出。其工作原理通常包括模板解析、数据绑定和渲染输出三个阶段。在Java生态中,Thymeleaf凭借其‘自然模板’设计哲学脱颖而出,它允许模板文件本身就是合法的HTML,可直接在浏览器预览,极大地优化了前后端协作流程。这一特性不仅提升了Web页面开发效率,更使其技术价值延伸至动态内容生成的广阔领域,例如合同、报表等格式化文档的自动化生产。结合Spring Boot的自动配置能力,Thyme 阅读详情

1、首先引入JS,用#thisNav接收后台标记的字段,获取该页面的id,根据class="a-first"取到需高亮导航的id(此id需要根据后台字段获取th:data-id="${nav.id}"),逻辑:若该页面id与选中的导航id一致thisValue == item.dataset.id,则在class="a-first"这个class中追加一个selected样式

window.onload = function(){
    var thisValue = document.querySelector('#thisNav').value
    var navs = document.querySelectorAll('.a-first')
    console.log(navs)
	for(let item of navs){
		if(thisValue == item.dataset.id){
		   item.classList.add('selected')
		}
	}
}
$('#large-input').focus(function(){
	        $('#pageNav').css({
				display:'none'
			})
			$(this).css({
				width:'96%'
			})
			$('#large-form').css({
				width:'100%'
			})
	    });
	$('#large-input').blur(function(){
	        $('#pageNav').css({
	        	display:'block'
	        })
			$(this).css({
				width:'100px'
			})
			$('#large-form').css({
				width:'auto'
			})
	    });

2、对需要高亮的导航设置class和data-id,class用于获取该高亮部分的id以及追加高亮的样式

 3、设置选中后的当前页面导航高亮的样式,追加了一个样式,既加入了selected后(上述JS判断是否追加)就使用该样式

<style>
    .a-first.selected{
        color: #f7bd00 !important
    }
</style>

4、在页面中引入标记的字段,用来获取本页面的id

 <input type="hidden" id="thisNav" th:value="${commonContent.oldParentId }" />

Springboot+thymeleaf动态修改权限菜单 阅读详情

相关推荐

【Spring Boot】Thymeleaf模板引擎 — Thymeleaf页面布局

熟悉Thymeleaf的语法和表达式后,后面开发起来会更加得心应手。接下来好好研究一下Thymeleaf如何实现完整的Web系统页面布局。

衍生星球的博客 1129

SpringBoot代码复用——thymeleaf提取导航栏并插入或替换元素

文章目录创建通用文件commons提取导航栏1.找到导航栏所在代码块2.把导航栏的前端代码块移入commons并命名3.在各个有需求的html文件中使用导航栏组件 创建通用文件commons 注意:commons和所有要用thymeleaf的html文件都应该设置引用: <!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-4.dtd"> <html xmlns="http://www.w

z2431435的博客 1608

Layui实现点击左侧导航栏菜单,在右侧内容生成对应的目录页,可右键删除所有页

在layui的后台管理页面上,通过jquery实现点击导航栏,呈现浏览器新打开页面的效果,并支持右键删除所有。详情请往下看。

程序羊的博客 2412

thymeleaf页面中使用data-*自定义属性

一.前言 在我们平时使用thymeleaf时,经常会用到th:each标签来循环遍历数据,以便将数据展示到页面中。尤其在后台管理软件比较常见。试想我们要给循环遍历出的每个元素都绑定点击事件,那我我们点击某一个按钮时,如何将这个按钮从所有按钮区分出来?这里我们就要用到自定义属性。 首先我们来看一个应用场景: 图片来源网络 微信投票需求中,我们在页面中就可以th:each标签来将所有用户的投票信息...

麦叔 1万+

4.2.3 Thymeleaf标准表达式 - 5. 片段表达式

在本次实战中,我们通过 Thymeleaf 的片段表达式实现了模板的模块化和复用。首先,我们定义了一个导航栏片段 `navbar`,并通过参数 `activeTab` 动态高亮当前激活的标签。然后,我们在多个页面(如主页、关于页和联系页)中通过 `th:replace` 引用了该片段,实现了复用。同时,通过 Spring Boot 的控制器为每个页面传递参数,确保导航栏的动态效果。最终,启动应用后,访问不同页面时,导航栏能够正确显示当前激活的标签……

howard2005的专栏 658

计算机控制液压同步顶升系统,PLC四点多点同步顶升系统,同步液压顶升系统

PLC同步顶升系统系统可分为5个部分:液压泵站、PLC计算机控制系统、液压终端、位移压力检测与人机界面操作系统,位移同步精度1mm,同步控制点数:4,8,12,16,20,40,80,99;产品特点:高速置零、低速顶升,升降速度可以任意控制;液压千斤顶内置式(或外置)位移、压力传感器、均载阀,保证了顶升系统在恶劣工作环境下的高可靠性;均载阀的过载保护功能,避免了多缸顶升时常见的胀缸事故;先进的进油...

weixin_30093045的博客 1435

Spring Boot 3.x 项目里,用 Thymeleaf 写个带导航栏的页面有多简单?

本文详细介绍了如何在Spring Boot 3.x项目中利用Thymeleaf快速构建智能导航栏。通过模块化设计、动态参数传递和高级布局技巧,开发者可以轻松实现导航栏的高亮、复用和维护,大幅提升Web开发效率。

weixin_30628801的博客 413

Realtek RTD1319D芯片解析:H.266与AV1双解码的机顶盒SoC

视频编解码技术是数字媒体传输的核心,H.266/VVC作为新一代标准,相比H.265提升50%压缩效率,显著降低带宽需求。其实现原理依赖于专用硬件解码器和并行处理架构,在超高清视频传输领域具有重要价值。Realtek RTD1319D作为首款商用H.266处理器,采用异构计算设计,集成四核ARM CPU和独立视频处理单元,同时支持AV1解码,兼顾市场兼容性。该SoC特别适合4K机顶盒、数字标牌等应用场景,其HDMI 2.1a接口和DVB解调器为超高清内容传输提供完整解决方案。开发时需注意散热设计和内存配置优

weixin_42591413的博客 673

Thymeleaf如何使用?

1.Thymeleaf是什么 Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎 Spring官方支持的服务的渲染模板中,并不包含jsp。而是Thymeleaf和Freemarker等,而Thymeleaf与SpringMVC的视图技术,及SpringBoot的自动化配置集成非常完美,几乎没有任何成本,你只用关注Thymeleaf的语法即可。 Thymeleaf 如何使用 导入maven依赖 <dependency> <

weixin_43203363的博客 2231

先进封装Interposer仿真步骤及说明

摘要: Interposer仿真是2.5D/3DIC封装设计的关键环节,涵盖信号完整性(SI)、电源完整性(PI)、热及结构应力分析。流程分为五个阶段:1)前处理,定义层叠结构与材料属性;2)参数提取,通过3D电磁建模获取TSV、传输线等寄生参数;3)仿真设置,选择求解器并设定频率范围;4)结果分析,评估信号损耗、阻抗及电源网络性能;5)后处理,进行多物理场协同仿真并生成模型。核心挑战在于多尺度与多物理场耦合,需优先确保高速信号与电源网络的仿真精度。常用工具包括Ansys HFSS、Cadence Sigr

DSY_0324的博客 1352

医疗 java 实战:2.HIS(医院信息系统)对接

HIS(医院信息系统)是医疗机构的核心管理系统,负责患者的挂号、医嘱、收费、病历管理等核心业务。为了与其他系统(如 LIS、PACS、EMR、医保系统)实现数据互通,HIS 需要进行多种方式的对接。:HIS 需要确保与 LIS、PACS、EMR 之间的数据实时同步,避免数据丢失或延迟。:医生在 HIS 开医嘱后,检验信息需要同步到 LIS,LIS 处理检验后返回结果。:HIS 与 LIS、PACS、EMR 交互患者信息、医嘱、检验报告。:HL7 V2.x 消息(ADT、ORM、ORU 等)。

weixin_44743723的博客 3284

手把手教你用Thymeleaf + Spring Boot 3.x 搭建一个带导航栏的动态网站

本文详细介绍了如何使用Thymeleaf和Spring Boot 3.x构建一个动态网站,包括环境搭建、Thymeleaf核心机制解析、动态导航栏实现、数据交互技巧以及高级优化策略。通过实战指南,帮助开发者快速掌握现代Web开发技术,提升开发效率。

weixin_30819085的博客 384

wflow模型hbv

毛管水的处理 😄 快速流的处理 K4是为了产生基流的 找到了令人激动的kenematic模块 😄

m0_46268055的博客 781

thymeleaf代码片段点击导航高亮

引用了代码片段,点击某个导航的时候需要高亮显示 公共页面: <li class="layui-nav-item" th:class="${layuiThis=='osUI/index'? 'layui-nav-item layui-this':'layui-nav-item'}"> <a href="/osUI/index" th:href="@{/osUI/index}">首页</a> </li> th:class="${layuiThis=='os

flame的博客 461

基于 Qt C++ 的战术通信终端

logMessage(QString("新客户端连接来自: %1:%2").arg(incomingTcpSocket->peerAddress().toString()).arg(incomingTcpSocket->peerPort()));logMessage(QString("服务器已启动,在 [%1]:%2 监听IPv6连接...").arg(ui->lineEditAddress->text()).arg(port));

寒寒豆豆软件公司的博客 79

基于共识的捆绑算法CBBA在多无人机多任务调度中的实现

在捆绑过程中,每个无人机根据自己的任务清单和其他无人机的任务清单,确定一个被称为“束”的集合。通过合理的任务分配和无人机协作,CBBA算法能够实现最优的任务调度,提高了多无人机系统的效率和执行能力。在每一轮迭代中,无人机根据自己的当前任务和位置信息将任务清单发送给其他无人机,并接收其他无人机发送过来的任务清单。通过比较其他无人机的任务清单和自身的任务清单,每个无人机可以更新自己的任务分配情况。在这一步中,每个无人机根据自己选择的新任务,更新自身的任务清单,并将更新后的清单发送给其他无人机。

持续更新 1156

springboot+Thymeleaf结合使用简单操作

springboot+Thymeleaf结合使用简单操作创建springboot项目导入maven包关闭缓存讲解Thymeleaf模板引擎用法th:fragment(片段): 提取公共部分th:insert :插入侧边栏当鼠标点击时高亮表格遍历 th:each{aa:${bb}}th:href 请求路径带参数 创建springboot项目 导入maven包 <dependency> <groupId>org.springframework.boot<

weixin_40776360的博客 554

【DRAM存储器六十五】DDR5介绍--训练相关之MPC、Read Training Pattern、Read Preamble Training Mode

简述DDR5 MPC操作和读训练时颗粒输出pattern的配置

highman110的博客 364

vue.js能美化界面吗_普通页面使用vue.js心得

在写本文之前要问自己几个问题,来说明为什么要这么做:为什么在html中使用vue.js?vue.js已经趋于成熟,个人感觉比jquery要好用的多,但是在node环境下使用vue.js不用使用SSR后端渲染的情况下SEO并不友好,所以就想着在html直接引用vue.js当做jquery使用。为什么不使用SSR后端渲染?因为本人搞后台开发使用的是JAVA,所以要想SSR必须使用nodejs作为服务端...

weixin_35615322的博客 717

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SpringBoot整合Thymeleaf提取公共页面

在我们开发web项目的过程中,例如我们在编写HTML页面代码的时候,像典型的导航栏、侧边栏等部分,几乎都是重复的代码。在这之前我们一般都是使用页面嵌套等方式,把这些多余的页面代码去重复,最近接触到很多前后端代码分离开发的技术(Vue,Thymeleaf等),那么今天就简单分享一下学习到的Springboot整合了Thymeleaf模板后提取页面公共代码。 下面这两部分折叠的代码段就是上图红色框里面的顶部和侧边栏。 首先在templates目录下创建一个页面把上面两段代码放置进去,单独抽取出来..

weixin_44541136的博客 928

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

thymeleaf中抽取公共片段

将dashbord.html和emps下的list.html重复的导航栏和侧边栏代码删掉,抽取到common下的common.html文件中 使用th:fragment="topnav"为公共片段命名(导航栏) th:fragment=“side”(侧边栏) 在dashbord.html中使用引入头部导航栏;使用引入侧边栏 同样在emps下的list.html中执行同样的操作!最好和dashbord.html中使用一样的方法引入头部导航栏和侧边栏 即可做到代码重用,类似于vue中的组件! 但是上面都使用

qq_51691366的博客 2187

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Thymeleaf语法总结

如果开发Web应用前后端不分离,Thymeleaf就会显得十分重要,当然前后端分离的话Thymeleaf也有其用武之地。 jsp支持非常强大的功能,包括能写Java代码,但是SpringBoot项目首先 是以jar的方式,不是war,第二,如果用的是嵌入式的Tomcat,他现在默认是不支持jsp 的。 SpringBoot推荐使用模板引擎,Thymeleaf Thymeleaf官网:https://www.thymeleaf.org/ 使用Thymeleaf,需要在html文件中导入...

m0_51666430的博客 538

SpringBoot前端页面设置

进行css等静态资源加载的时候 需要由thymeleaf来接管 所以要在每个html文件中引入thymeleaf的命名空间 因为引用css样式是一个url连接 所以用@{}来对url进行取值 <link th:href="@{/css/bootstrap.min.css}" 必要的时候 可以清除一下thymeleaf的缓存 spring.thymeleaf.cache=false 设置首页 可以通过创建controller类 然后返回到index.html 可以创建在java类路径下创建c.

Amazing66的博客 4934

38.SpringBoot学习笔记--CRUD实验--员工列表-链接高亮与完成列表

CRUD实验--员工列表-链接高亮与完成列表

java阳旭的博客 333

springboot公共页面抽取并高亮

1. 需求 现在点顾客栏目,希望能有页面跳转,并显示,但实际无反应 1.1.分析 主页的html <!DOCTYPE html> <!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ --> <html lang="en"> <head> ...

Farmer-Lei 481

Thymeleaf学习笔记

Theymeleaf官方文档 简介 模板引擎 模板引擎的作用就是我们来写一个页面模板,比如有些值呢,是动态的,我们写一些表达式。而这些值,从哪来呢,就是我们在后台封装一些数据。然后把这个模板和这个数据交给我们模板引擎,模板引擎按照我们这个数据帮你把这表达式解析、填充到我们指定的位置,然后把这个数据最终生成一个我们想要的内容给我们写出去,这就是我们这个模板引擎,不管是jsp还是其他模板引擎,都是这个思想 Thymeleaf简介 ​ Thymeleaf是Springboot推荐的模板引擎技术(SpringB.

321
下一篇: swiper插件的使用
debugtoday
博客等级 码龄7年 10粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值