【发布时间】:2021-12-22 00:30:03
【问题描述】:
我正在开发一个 PHP 项目,但无法将 ClassActive 添加到引导导航栏
<?php foreach ($category as $cat){echo <li class="nav-item><a class="nav-link" aria-current="page" href="categories.php?pageid='.$cat['ID'].'">' .$cat['Name']. '</a></li>';}?>
jQuery=>
$('.navbar-nav .nav-item a').click(function(e) {
$('.navbar-nav .nav-item a').removeClass('active');
var $this = $(this);
if (!$this.hasClass('active')) {
$this.addClass('active');
}
//e.preventDefault();
});
【问题讨论】:
-
当您的问题中没有代码时,您希望我们如何提供帮助?
-
我不明白你的 if 语句。当你删除上面的活动类时,为什么要检查 obj 是否有活动类?
-
首先,不要将变量命名为“$this”。接下来一个问题。当您单击一个链接时,您会转到另一个页面吗?在这种情况下,您的 jQuery 代码可以工作,但您永远看不到它,因为您导航离开了您所在的页面。
-
@GertB。好吧,在 Web 上经常可以看到以
$开头的 jQuery 变量命名。它有助于查看哪些是 jQuery 对象而不是普通的 DOM 元素或 javascript 变量。关于访问的链接的好点。但它可能是一个带有标签的链接,可以留在这个页面上并激活一个标签或类似的东西。无论如何,Anas 的问题需要更多关于他想要做什么的细节。根据这一点,一些 CSS 可以在没有任何 JS 的情况下完成工作。 -
@PatrickJanser 带有
$的变量在 js 中使用,对我来说没问题。称它为$this对我来说是不行的。这是一个非常令人困惑的 varname。称它为var $clickedLink对我来说不是问题。主题标签链接是我问这个问题是否单击链接访问另一个页面的原因。
标签: php jquery twitter-bootstrap