如何使我的.selected类在hrefs列表中重新加载后保持在正确的a(href)上
How to make my .selected class stay on the correct a(href) after the reload in a list of hrefs
我有一个链接侧边栏,每次点击链接都会加载,但当我加载下一页时,.selected类会移回"all"而不是所选链接。
我知道这是用这里的选项卡来解释的,但我无法使用我在列表中找到的方法来代替选项卡
我正在使用javascript编译链接列表,用于显示翡翠。
Jade Code(Kinda,我删除了不必要的东西)
ul.new.category
li.selected
div
a.anm_det_pop(href='/popular')
strong All
each i in list
li
div
a.anm_det_pop(href='/page/#{i}')
strong #{i.toUpperCase()}
我的脚本
script.
$(function(){
$('.category > li').click(function(){
$('.category > li').removeClass('selected');
$(this).addClass('selected');
});
});
脚本一直工作到我点击它的地方,我在重新加载之前短暂地看到了类切换,在重新加载之后.selected类返回到all。
我想完成的是.选定的类保持在活动链接上。
如有任何帮助,我们将不胜感激。谢谢
鉴于我不完全确定页面是如何工作的,我认为您需要防止默认的点击事件。希望这不会破坏应用程序。
$(function(){
$('.category > li').click(function(e){
$('.category > li').removeClass('selected');
$(this).addClass('selected');
e.preventDefault();
});
});
想清楚了,对于那些有同样问题的人,我把整个函数移到了一个mixin中,我已经用sequilize在js中制作了这个函数,以包括当前页面以及我的href列表的列表,所以它相对简单。
mixin List(List,currentPage)
ul.new.category
li(class=!currentPage ? 'selected' : '')
div
a.anm_det_pop(href='/popular')
strong All
each i in list
li(class=currentPage === i.page ? 'selected' : '')
div
a.anm_det_pop(href='/genre/#{i.page}')
strong #{toTitleCase(i)}
在Jade中,您只需添加mixin,然后将列表添加为参数
+List(List,currentPage)
mixin读取当前页面并将其与列表进行比较,然后使列表中的选择具有class.selection.
非常适合我的需要。
希望这能帮助其他人,因为我花了一天时间试图找出花了15分钟做的事情
相关文章:
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 加载自定义类在ExtJs中不起作用
- 测试iFrame的位置.href是在jasmine单元测试中设置的
- href没有在每次单击li的一部分时加载链接.使用javascript使整个li可以点击
- href属性在页面加载后拒绝重新设置
- 将href类插入JS文件(使用createLink)任何想法
- 绑定未来的类在 jQuery 中失败
- CSS 类在验证时只工作一次
- 添加/删除类在 Chrome 中对我不起作用
- CSS 类在特定场景中不适用
- jQuery类在分区刷新后没有添加
- 如何使我的.selected类在hrefs列表中重新加载后保持在正确的a(href)上
- ES6类:在超级方法中获取子类的正确名称
- es6 Javascript 类在回调中使用它
- css类在页面重新加载后处于活动状态
- 什么类在GWT中转换为java脚本
- ES6类:在另一个函数中包装方法实现
- 如果快速切换,ng类在绑定变量上不能很好地工作,这可能吗
- javascript类在每次迭代中看到多个DOM?jquery.每个人都很困惑
- 原型上具有默认属性的es6类在traceur中抛出