点击导航菜单,切换选中状态

效果:

思路:首先获取选中的URL,再通过正则判断是否相同,相同就加上相应的属性,不相同就去除相应的属性。

html代码

<div class="layui-container" style="padding: 0px; margin-top: 70px;">
<div class="layui-row footer-nav">
<div class="layui-col-xs2 layui-col-sm2 item">
<a href="{:url('/index/index/index')}">
<img src="/public/index/images/icon/home.png">
<div >首页</div>
</a>
</div>
<div class="layui-col-xs2 layui-col-sm2 item">
<a href="{:url('/index/index/videos')}">
<img src="/public/index/images/icon/video.png">
<div>视频</div>
</a>
</div>
<div class="layui-col-xs2 layui-col-sm2 item">
<a href="{:url('/index/index/music')}">
<img src="/public/index/images/icon/music.png">
<div>音乐</div>
</a>
</div>
<div class="layui-col-xs2 layui-col-sm2 item">
<a href="{:url('/index/index/news')}">
<img src="/public/index/images/icon/new.png">
<div>动态</div>
</a>
</div>
<div class="layui-col-xs2 layui-col-sm2 item">
<a href="{:url('/index/index/about')}">
<img src="/public/index/images/icon/about.png">
<div>关于</div>
</a>
</div>
</div>
</div> <style type="text/css">
.active{
color: red
}
</style>

JQ代码

<script type="text/javascript">
var url = location.href;
$('.item > a').each(function () {
pat = new RegExp('/index/index/index');
if (pat.test(url)){
$('.item>a').eq(0).addClass('active');
$('.item>a>img').eq(0).attr("src","/public/index/images/icon/home_selected.png");
}
pat = new RegExp('/index/index/videos');
if (pat.test(url)){
$('.item>a').eq(0).removeClass('active');
$('.item>a').eq(1).addClass('active');
$('.item>a>img').eq(1).attr("src","/public/index/images/icon/video_selected.png");
}
pat = new RegExp('/index/index/music');
if (pat.test(url)){
$('.item>a').eq(1).removeClass('active');
$('.item>a').eq(2).addClass('active');
$('.item>a>img').eq(2).attr("src","/public/index/images/icon/music_selected.png");
}
pat = new RegExp('/index/index/news');
if (pat.test(url)){
$('.item>a').eq(2).removeClass('active');
$('.item>a').eq(3).addClass('active');
$('.item>a>img').eq(3).attr("src","/public/index/images/icon/new_selected.png");
}
pat = new RegExp('/index/index/about');
if (pat.test(url)){
$('.item>a').eq(3).removeClass('active');
$('.item>a').eq(4).addClass('active');
$('.item>a>img').eq(4).attr("src","/public/index/images/icon/about_selected.png");
}
});
</script>

jq 实现切换菜单选中状态的更多相关文章

  1. vue-router + ElementUI实现NavMenu 导航菜单 选中状态的切换

    elemen-ui官方网站:http://element.eleme.io/#/zh-CN/component/menu 新手小白利用vue+element-ui尝试搭建后台管理系统, 效果是这样的, ...

  2. LayUI左侧菜单无法保持选中状态

    1.问题描述:一般的左侧菜单都会是动态添加的模块,利用循环把模块名和链接地址逐个显示出来如下图 但是问题来了,只要点任何二级菜单就不会保持左侧菜单当前一级菜单和二级菜单选中状态. 2.分析原因:因为模 ...

  3. RecyclerViewSelectableAdapterDemo【封装BaseSelectableAdapter用于多选、单选,以及切换选中状态等功能】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 记录封装单选.多选.切换选中状态的BaseSelectableAdapter基类,配合Recyclerview使用. 注意:此Dem ...

  4. jq:翻页时,保存上页多选框checkbox选中状态

    这里主要讲一种:中间的 checkbox 是 通过Ajax调出的. 则翻页时,为了保存上页的选定状态,可在页面中定义一个变量,用来存储选中状态的值. <input class="cli ...

  5. Taro button点击切换选中状态

    1.引入组件 2.state中设置选中状态 // button按钮的默认选中,0代表选中 state = { currentIndex: 0 } 3.设置class的样式,点击更改选中 selectN ...

  6. jq给单选框 radio添加或删除选中状态

    $("#div1 :radio").removeAttr("checked");//删除目标div下所有单选框的选中状态 $("#div1 :radi ...

  7. jQ无法设置checkbox变成选中状态

    设置以后checkbox并没有变成选中状态,用chrome调试看了一下,checkbox中确实有checked属性,针对这个问题,大家可以参考下本文 代码如下: $("input" ...

  8. html 布局;css3+jq 下拉菜单;table分页动态添加行;html5本地存储;简单易用的html框架

    简单好用的html框架,预览图见最后: 源码: 1.页面布局使用table: table 嵌套 +iframe 布局: 2.下拉菜单为jq+css3 动画; css input 无边框,select下 ...

  9. Fragment实现底部Tab,切换可保存状态

    activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android& ...

随机推荐

  1. UFUN函数 UF_UI UF_PART函数(UF_UI_select_with_class_dialog, UF_PART_export_with_options)

    /*主要演示 UF_PART_export_with_options 这个函数 */1 //设置class_dialog选择过滤 static int init_proc(UF_UI_selectio ...

  2. PostgreSQL 11 Partitioning Improvements

    转自:https://pgdash.io/blog/partition-postgres-11.html PostgreSQL 11, due to be released later this ye ...

  3. 洛谷 CF399B【Red and Blue Balls】题解

    n年没有更博客:我总结出了规律,当学的东西很难得时候都去学习,没有时间写博客,只有 内容对于我这种蒟蒻友好,又让我非常闲的慌时才写博客,这种博客以后也没有价值(也有些是做完一道题有成就感写的) 最近内 ...

  4. 洛谷 P5535 【XR-3】小道消息

    https://www.luogu.com.cn/problem/P5535 伯特兰-切比雪夫定理: 若整数n > 3,则至少存在一个质数p,符合n < p < 2n − 2. 另一 ...

  5. Redis4.0.9最新版本安装时出现的问题

    Redis Redis(REmote DIctionary Server,远程数据字典服务器)是开源的内存数据库,常用作缓存或者消息队列. Redis的特点: Redis存在于内存,使用硬盘作为持久化 ...

  6. NIO (一) NIO是什么

    参考文档:java为什么需要NIO:https://liuchi.coding.me/2017/08/01/浅谈Java为什么需要NIO/美团技术团队 NIO浅析:https://tech.meitu ...

  7. elasticsearch容量规划

    https://docs.bonsai.io/article/123-capacity-planning Capacity Planning Capacity planning is the proc ...

  8. leetcode 13. Integer to Roman

    使用eval,特别处理6个case var romanToInt = function (s) { const map = { 'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C ...

  9. 【python学习案例】python判断自身是否正在运行

    需要引入psutil包: 实现思路: 1)用os.getpid()获取当前程序运行PID,将PID存入文件中 2)用psutil模块获取当前系统所有正在运行的pid 3)读取之前存入的PID,判断该P ...

  10. js实现对上传图片的路径转成base64编码,并且对图片进行压缩,实现预览功能1

    参考 https://blog.csdn.net/qq_31965515/article/details/82975381 https://www.cnblogs.com/zhangdiIT/p/78 ...