Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在href列表中重新加载后使my.selected类保持在正确的a(href)上_Javascript_Jquery_Node.js_Pug_Href - Fatal编程技术网

Javascript 如何在href列表中重新加载后使my.selected类保持在正确的a(href)上

Javascript 如何在href列表中重新加载后使my.selected类保持在正确的a(href)上,javascript,jquery,node.js,pug,href,Javascript,Jquery,Node.js,Pug,Href,我有一个链接边栏,每次你点击一个链接时都会加载,但是当我加载下一页时,所选的类会移回“全部”,而不是所选的链接 我知道这是用这里的标签来解释的,但是我不能用我在列表中找到的方法来代替标签 我正在使用javascript编译链接列表,用于显示 玉码(有点,我删除了不必要的东西) 我的剧本 script. $(function(){ $('.category > li').click(function(){ $('.category > li').removeClass('s

我有一个链接边栏,每次你点击一个链接时都会加载,但是当我加载下一页时,所选的类会移回“全部”,而不是所选的链接

我知道这是用这里的标签来解释的,但是我不能用我在列表中找到的方法来代替标签

我正在使用javascript编译链接列表,用于显示

玉码(有点,我删除了不必要的东西)

我的剧本

script.
$(function(){
  $('.category > li').click(function(){
    $('.category > li').removeClass('selected');
    $(this).addClass('selected');
  });
});
脚本工作到我单击它的时候,我会在重新加载之前短暂地看到类开关,在重新加载之后。所选类返回到所有

我想完成的是。选定的类保留在活动链接上


任何帮助都将不胜感激。谢谢

鉴于我不能完全确定页面是如何工作的,我认为您需要防止默认的点击事件。希望这不会破坏应用程序

$(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分钟才完成的事情

我想你的页面上正在发生其他事情。您有我们可以在线查看的内容吗?这些内容都还没有激活,只有本地主机如果您删除脚本,
。所选的
类将添加到所有列表项中吗?没有,它将保留在li中。选择列表中的所有内容,第一项您可以用脚本复制jade代码的输出并放入JSFIDLE吗?这实际上取消了。选择是因为它阻止默认设置
+List(List,currentPage)