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

效果:

思路:首先获取选中的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. Linux下进程间通信方式——共享内存

    1.什么是共享内存? 共享内存就是允许两个或多个进程共享一定的存储区.就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针.当一个进程改变了这块地址中的内容的时候,其它进程都会察 ...

  2. Python UDP小程序

    为了做UDP的测试,采用了nc和Python的服务器端. nc的安装和使用: yum install -y nc nc -vuz Python的UDP服务器端小程序: # -*- coding: UT ...

  3. 修改ARP缓存表大小

    在下发Mininet的ARP缓存表表项时,出现了如下的错误信息: SIOCSARP: No buffer space available 这是由于ARP表是缓存在内存中的,超过了系统对ARP缓存表大小 ...

  4. ASP.NET Core WebApi构建API接口服务实战演练

    一.ASP.NET Core WebApi课程介绍 人生苦短,我用.NET Core!提到Api接口,一般会想到以前用到的WebService和WCF服务,这三个技术都是用来创建服务接口,只不过Web ...

  5. Qt相关博客总览

    一.Qt快速入门 Qt快速入门之一:开始学习Qt 与Qt Creator Qt快速入门之二:Qt Creator简介 Qt快速入门之三:Qt程序编译和源码详解 Qt对话框之一:标准对话框 二.Qt窗口 ...

  6. odoo13 searchpanel tree

    <record id="view_department_filter" model="ir.ui.view"> <field name=&qu ...

  7. selenium爬虫入门(selenium+Java+chrome)

    selenium是一个开源的测试化框架,可以直接在浏览器中运行,就像用户直接操作浏览器一样,十分方便.它支持主流的浏览器:chrome,Firefox,IE等,同时它可以使用Java,python,J ...

  8. Beta冲刺(2/7)——2019.5.24

    作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Beta冲刺(团队) 团队目标 切实可行的计算机协会维修预约平台 开发工具 Eclipse 团队信息 队员学号 队 ...

  9. 【layui】日期选择一闪而过问题

    添加 trigger: 'click',

  10. Python3+WebSockets实现WebSocket通信

    一.说明 1.1 背景说明 前段时间同事说云平台通信使用了个websocket的东西,今天抽空来看一下具体是怎么个通信过程. 从形式上看,websocket是一个应用层协议,socket是数据链路层. ...