Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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
将活动类添加到jquery中_Jquery_Class - Fatal编程技术网

将活动类添加到jquery中

将活动类添加到jquery中,jquery,class,Jquery,Class,我试图在每次单击列表项时删除并设置其活动类。我不明白哪里出了错。提前谢谢 $(“#活动菜单”)。在('click','a',function()上{ $('#活动菜单a.active').removeClass('active'); $(this.addClass('active'); }); 根据您的需要,您不需要a标记单击的侦听器,相反,您必须使用$\u SERVER['REQUEST\u URI']获取当前页面名称,并根据添加活动类的使用条件激活a标记。我知道您将

我试图在每次单击列表项时删除并设置其活动类。我不明白哪里出了错。提前谢谢

$(“#活动菜单”)。在('click','a',function()上{
$('#活动菜单a.active').removeClass('active');
$(this.addClass('active');
});

根据您的需要,您不需要a标记单击的侦听器,相反,您必须使用$\u SERVER['REQUEST\u URI']获取当前页面名称,并根据添加活动类的使用条件激活a标记。

我知道您将这段HTML包含到您拥有的每个PHP文件中,作为一个固定的菜单元素

因此,每当有人点击菜单链接时,他们基本上会被导航到另一个页面(除非你通过ajax加载链接——事实似乎并非如此)。在这种情况下,不需要通过jQuery添加/删除活动类-实际上它也不会有任何效果,因为当您导航离开时,元素的状态不会被保留

正如第一个答案中指出的,您需要检查第一次加载的页面,然后在必要时在菜单项上添加“active”类

这可以通过首先确定活动页面来处理:

$request = $_SERVER['REQUEST_URI'];
$active_page = "";

if (strpos($request, 'blog.php') !== false) {
   $active_page = "blog";   
} else if (strpos($request, 'contact.php') !== false {
   $active_page = "contact";
}
。。。等等然后,在列出菜单项时,可以检查它们是否为活动项,如果是,可以添加活动类,如:

<ul id="active-menu" class="ul">
  <li class="menu_li">
    <a class="blogname <?=$active_page == 'blog' ? 'active' : ''?>"  href="blog.php">
      Menu item text
    </a>
  </li>
  <li class="menu_li">
    <a class="blogname <?=$active_page == 'contact' ? 'active' : ''?>"  href="contact.php">
      Menu item text
    </a>
  </li>
</ul>

链接点击是否确实导致加载新页面?如果是这样的话,那就是问题所在。谢谢你的回答:现在活动类可以按照我的要求工作,但是a href不能从一个页面转到另一个页面,它保持在同一个页面上(如果您不使用默认设置,那么添加活动类的目的是什么?如果它将非常简短地显示?您将在单击它后立即转到一个新页面?可能我不理解您希望通过AJAX加载内容的问题。我只想在切换页面中显示用户:例如,当站点已加载,主页链接是活动的(颜色为红色),所以,我想,当用户单击另一个链接时,hompage应该像其他链接一样变为被动,单击的页面变为活动。这是我想做的,谢谢