当前位置: 首页 > 知识库问答 >
问题:

使用JQuery从menu.html加载菜单,然后使当前链接处于活动状态

楚意
2023-03-14

尝试将'active'类添加到与当前页面相对应的链接中,该链接位于menu.html中存储的菜单上,并通过jQuery将其拉到index.html。

我已经设法用JQuery调用了menu.html文件,并将菜单插入index.html。CSS的造型都很完美。但是,由于我现在不是单独添加'active'类到每个菜单项,所以我需要一个方法来实现这一点。在index.html中所有活动类都在一个屋檐下时,我已经设法向菜单添加了一个活动类,但现在不是了,我已经将它移到了它自己的单独文件中。我已经得到的要点是,要么有工作的链接,或有‘活动’添加,如下所示。

菜单.html:

null

$(document).ready(function() {

  $(function() {
    $('.side a').click(function(e) {
      e.preventDefault();
      $('a').removeClass('active');
      $(this).addClass('active');
    });
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="side">
  <a href="/intro.html">Intro</a>
  <a href="/contact.html">Contact</a>
  <a href="/about.html">About</a>
</div>

null

我希望上面显示我的菜单,显示活动链接,然后链接带用户到每一个不同的页面。菜单是show,它确实显示了活动链接,但链接现在不工作了。

共有1个答案

宰父劲
2023-03-14

您可以声明一个url变量以查看哪个是当前页面,然后将活动类添加到其中:

<script>
    // This line will give you the active page without parameters
    var url = window.location.href.split('/')[window.location.href.split('/').length-1].split('?')[0];
    $('a[href$="'+url+'"]').addClass('active');
</script>
 类似资料:
  • 在引导导航栏中,当导航链接各自的下拉菜单被打开或下拉菜单链接被悬停时,如何使导航链接激活(只需改变导航链接的bg颜色)?我尝试了以下代码 null null

  • 我想突出显示我的导航菜单中的当前链接基于当前活动的URL。 如果我的导航菜单是纯CSS,我已经找到了很多解决方案,但是我的菜单是基于图像的,因此每个链接的活动类都是不同的,这就是我被困住的地方。 谁能给我提点有用的东西吗?我对jQuery很陌生,但发现它非常有用,是我学过的最好的语言之一。 每个标记都有一个预加载的CSS背景图像,每个类都有一个悬停函数。

  • 如果菜单项url==当前url,我有以下代码可以将活动css类添加到菜单项: 但这会将该类添加到所有菜单项中。有什么提示吗?

  • 问题内容: 我目前正在使用Laravel应用程序,为了防止垃圾邮件,我决定只有活跃的用户才能登录。我目前正在使用Laravel的登录系统,就像Laravel的官方网站教程中一样,这是我的表单操作: 这完全可以正常工作,但是我想检查用户的活动状态,如果不活动,它将被重定向到激活页面,否则它将登录。有没有简单的方法可以执行此操作,或者我有义务制造新的控制器,路由和进行更多验证?谢谢。 编辑:忘记提及我

  • 我在菜单的活动项和切换的子菜单上有问题:当我点击“prensa”或“contacto”时,脚本将活动的well添加到菜单项中。例如,“prensa”获得激活,如果我点击“contacto”,它就会获得激活,将其从“prensa”中删除。 问题是,当我点击“艺术作品”,它得到的是活动类,但也从它的子菜单的所有链接。此外,如果我再次单击“prensa”,“artworks”的子菜单将保持打开,“art

  • 问题内容: 我需要在页面上活动任务的菜单链接上添加类。我正在使用localhost,以下是一些示例URL: 菜单的结构: 问题答案: 您可以使用jQuery遍历所有链接,并将它们的URL与进行比较。这是一个例子: