所以,在我的页面上我有导航栏,有助于移动它。点击之后,我从之前的< li>中删除.active类,并将其添加到新的。在控制台中一切看起来不错,但在页面上有一个问题。我无法看到活动的< li>中的.active类属性,并且无法像点击之前那样滚动它。这是我的页面和代码: https://kreha6.github.io/MacopediaTask/ (很难形容什么究竟发生了:))jQuery的addClass工作,但浏览器不适用新的类
$(document).ready(function() {
function scrollToId(id){
id = id.replace("link", "");
$('html,body').animate({
scrollTop: $("#"+id).offset().top},
'slow');
}
$("#navbar > ul > li > a").click(function(e) {
$('.active').removeClass('active');
$(this).addClass('active');
e.preventDefault();
scrollToId(this.id);
});
});
SCSS:
.active{
a{
background-color: $transparent !important;
text-decoration: overline;
text-decoration-color: $color1;
}
}
编辑: 我改变了我的代码中加入类的父元素像这样:
$(this).parent().addClass('active');
引导增加活跃类< LI>这是一个的PA租金,我试图做同样的事情。由于某种原因,它不起作用。有人知道为什么
这SCSS将转化为'。活跃了'选择目标的**了一个带班'.active'但你实际上是添加类内部的**元一个元素...然后什么都不会发生a.active中没有元素可以定位 – DaniP