【发布时间】:2020-11-24 16:45:11
【问题描述】:
有谁知道为什么下面的 JQuery 不能正常工作?当我单击导航栏中的链接时,我希望它更改样式(背景和字体颜色):
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("ul li a").click(function(){
$(this).addClass("active");
});
});
</script>
我确信 CSS 是正确的,因为当我将 class="active" 硬编码到 HTML 中时,它采用了正确的样式。但是,目前,当我单击导航栏中的任何链接时,导航栏中的所有链接都会闪入和闪出我希望刚刚单击的链接更改为的样式。希望这是有道理的。目前结果看起来类似于 CSS :active 选择器,但是当我点击导航栏中的 1 个链接时,所有链接都会闪烁。
这里是 HTML 元素:
<li><a href="/">Home</a></li>
<li><a href="/repository">Repository</a></li>
<li><a href="/events">Events</a></li>
<li><a href="/bio">Bio</a></li>
<li><a href="/contact">Contact</a></li>
</ul>
提前致谢。
如果它有所作为,我还在这个网站上使用 Flask 和 Bootstrap。 任何帮助,将不胜感激。如果一切顺利,这将是我的第一个网站。
【问题讨论】:
-
链接的 HTML(包括
href)是什么样的?当您在测试中对class="active"进行硬编码时,您将它添加到什么元素中? -
刚刚将它们编辑到我的帖子中。
-
还有另一个问题?让我们不要像你的名字一样太神秘吗? ;-)
-
页面是否刷新?因为如果是这样,您的 Javascript 也会刷新。如果你不取消锚标签的默认动作,在这种情况下,转到这个页面,它是非ajax的,所以服务器会刷新到那个页面,从而取消你所有的动作。
-
@T.J.Crowder 我正在尝试将
class="active"添加到列表的相关项目中。例如。<li><a href="/" class="name">Home</a></li>我不确定我是否理解您的问题,但希望这就是您需要的答案。我正在寻找向 添加类。哈不是故意的。我一直在考虑换成Zathras。啊,完全不是故意的。也许
标签: jquery css flask bootstrap-4