Home >Backend Development >PHP Tutorial >javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

WBOY
WBOYOriginal
2016-06-06 20:52:131631browse

刚开始是这个效果
javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

鼠标点击之后变成了这个效果
javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

要保证实现 a 标签点击链接一个新的网址
同时也要保证效果达到
我目前写的网站代码 可以下载
http://115.com/file/c2zlhblv
看看

回复内容:

刚开始是这个效果
javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

鼠标点击之后变成了这个效果
javascript - JQuery怎么实现页面刷新后保留鼠标点击addclass的样式?

要保证实现 a 标签点击链接一个新的网址
同时也要保证效果达到
我目前写的网站代码 可以下载
http://115.com/file/c2zlhblv
看看

感谢所以回答问题的人。 比较好的办法是使用url传参数,然后根据参数判断是否有必要显示class

但是更好的办法是下面这段JS

<code class="lang-javascript">$('ul.main-menu li a').each(function(){
    if($($(this))[0].href==String(window.location))
        $(this).parent().addClass('active');
});
</code>

详情:用jquery实现菜单导航给当前页面一个样式/

利用window.location.href增加一个判断是否为当前页的代码应该是可以做到的吧
不过感觉还是用后台代码写比较爽一点

一般来说这个还是怡红公子所说的由后台写入current后再处理比较合理。

必须要求纯前台实现的话,页面载入后需要做一次判断来决定是否对指定按钮展开/高亮。
要么用判断当前地址的方式,用地址来匹配需要处理的按钮;要么在按钮点击事件中添加把本按钮的id写到cookie里的操作函数。
前者突出“当前页”这一概念逻辑,但需要在js中额外维护一份地址-按钮对应表或对应规则。
后者就不是当前页的概念了,就是纯粹的指示,但是对禁止cookie的浏览器就无奈了。

常规的做法还是对比地址比较多,特别是按钮id与地址之间的对应关系比较简单的话。
比如 1.html -> id="btn1" 之类的……

1. 用ajax加载内容页面 , 同时打开菜单 .. 就是说页面不跳转
2. 用iframe显示内容也 , 同样页面不跳转
3. 在页面中控制 链接的样式 , 比如当前页面 是业务报表页面 , 那么就控制这个菜单 的class 为 active...类似这样吧

出个下下策:
修改addClass/removeClass等系列函数,把每次操作计入cookie,到新的页面读取cookie,把所有操作再做一遍……

iframe吧

a标签中的链接做一下处理呗,例如 /content.html ==> /content.html?tab=1

这个参数对后台没有用,但是会留在地址栏里,用window.location.href可以取到
在页面加载的过程中解析url,看看有没有tab的参数,有就addClass

鼠标点击之后修改url增加个参数¤tMenu=当前菜单的id,刷新时再判断处理

这个可以用jquery的cookie保存当前填写的需要设置的状态,然后在加载完根据cookie设置即可

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn