Javascript jQuery程序不工作

Javascript jQuery程序不工作,javascript,jquery,Javascript,Jquery,我在使用jQuery时遇到了一个问题,仅仅是因为没有使用它的经验。我的程序的目的是,如果单击导航栏中的链接,将CSS类当前的,并将其从以前的所有者中删除 请记住,我对javascript非常缺乏经验,只是为了学校的作业而在几分钟内学会了它。脚本根本没有做任何事情 我的代码: $(document).ready(function() { $('a').click( function(i){ var $current = $('a.current'); $(t

我在使用jQuery时遇到了一个问题,仅仅是因为没有使用它的经验。我的程序的目的是,如果单击导航栏中的链接,将CSS类<代码>当前的,并将其从以前的所有者中删除

请记住,我对javascript非常缺乏经验,只是为了学校的作业而在几分钟内学会了它。脚本根本没有做任何事情

我的代码:

$(document).ready(function() {
    $('a').click( function(i){
        var $current = $('a.current');
        $(this).addClass('current');
        $current.removeClass('current');
    });
});

编辑1:奇怪的错误,如果我不单击链接,而是单击文档,当前类将应用于整个文档。

您应该首先删除
类,然后添加它。否则,如果
单击
锚定
两次,则不会添加

$(function() {
    $('a').click(function() {
        $('a.current').removeClass('current');
        $(this).addClass('current');
    });
});
试试这个:

$current.removeClass('current');
$(this).addClass('current');

您需要先删除活动类,然后为当前元素添加当前类。

您需要缩小代码范围,使其仅影响导航栏中的链接,因为当前,您针对的是所有链接。问题是什么?您是否希望在导航到该类后将该类应用到该页上?或者这些链接实际上没有指向任何地方?这个主题已经得到了回答,但是,为了论证起见,这些链接确实指向某个地方,它们是我导航栏的一部分。我希望在单击链接时应用该类。如果您希望导航到的页面具有当前的
类,那么您需要一种将该类传递到新页面的方法,因为到目前为止,所有答案仅适用于当前页面链接是指向同一页面上具有ID的某些元素的链接,它们不是跨页面的,因为这可以通过将该页面的导航栏链接设置为当前类来实现谢谢你的回答谢谢你,这非常有用,你的代码只有一个问题。我想应该是美元('a.nav');不是美元(“.nav a”);我只是用它作为一个例子来说明如何使你的代码特定于你的导航。理想情况下,您可以在链接周围或链接本身上创建一个类,以允许您选择正确的项目。
var navLink = $('.nav a');

navLink.on('click', function(e){
    navLink.removeClass('current');
    $(this).addClass('current');
});