Javascript 如果存在特定类,则不要添加类

Javascript 如果存在特定类,则不要添加类,javascript,jquery,css,Javascript,Jquery,Css,“我的导航”突出显示访问者所在页面的部分,并在滚动时通过向指向该页面部分的任何href添加.active nav进行更改。我有一个指向#foo的图像精灵,但我不想要。主动导航添加到锚定标记。我没有幸实现:not选择器。我担心我在这方面花了太多时间,看不到明显的答案 如果特定类(.bar)已经存在,我希望下面的代码忽略href标记。请告知 if ( windowpos > $('#foo').offset().top) { $('nav li a').removeClass('active-

“我的导航”突出显示访问者所在页面的部分,并在滚动时通过向指向该页面部分的任何href添加.active nav进行更改。我有一个指向#foo的图像精灵,但我不想要。主动导航添加到锚定标记。我没有幸实现:not选择器。我担心我在这方面花了太多时间,看不到明显的答案

如果特定类(.bar)已经存在,我希望下面的代码忽略href标记。请告知

if ( windowpos > $('#foo').offset().top) {
$('nav li a').removeClass('active-nav');
$('a[href$="#foo"]').addClass('active-nav');
}
您可以使用以下功能:

$('a[href$="#foo"]').not('.bar').addClass('active-nav');
您可以使用以下功能:

$('a[href$="#foo"]').not('.bar').addClass('active-nav');
这个怎么样:

if($('a[href$="#foo"]').hasClass("bar")){
   //do stuff
} else {
   $('a[href$="#foo"]').addClass('active-nav');
}
这个怎么样:

if($('a[href$="#foo"]').hasClass("bar")){
   //do stuff
} else {
   $('a[href$="#foo"]').addClass('active-nav');
}

你确定它不应该是
'a[href!=“#foo”]”
$('nav li a')。不(“[href=#foo]”
不起作用?很抱歉,我的op没有明确说明我的代码示例没有包含我试图解决问题的内容。我所有的尝试都失败了。相关:在运行此代码之前,是否需要检查元素在整个页面中是否具有
.bar
类?您确定它不应该是
'a[href!=“#foo”]'
$('nav li a')。而不是('href=#foo')”
不起作用吗?抱歉,我的op没有明确说明我的代码示例不包含我解决问题的尝试。我所有的尝试都失败了。相关:在运行此代码之前,是否需要检查整个页面中的元素是否具有
.bar
类?没问题,很乐意帮助:)没问题,很乐意帮助:)这也很有帮助。这也很有帮助。