我可以顺畅地滚动到元素。将活动类添加到选定的li。一切都很好,直到我用鼠标向下滚动,然后活动类没有添加到当前元素li。
我正在使用:
<ul class="features">
<li class="active"><a href="#block1">block 1</a></li>
<li class="active"><a href="#block2">block 2</a></li>
<li class="active"><a href="#block3">block 3</a></li>
<li class="active"><a href="#block4">block 4</a></li>
</ul>
<div id="block1">my content....</div>
<div id="block2">my content....</div>
<div id="block3">my content....</div>
<div id="block4">my content....</div>
Jquery:
$('.menu-features li > a').click(function() {
$('.menu-features li').removeClass();
$(this).parent().addClass('active');
});
$('a[href^="#"]').click(function() {
$('html,body').animate({ scrollTop: $(this.hash).offset().top-120}, 700);
return false;
e.preventDefault();
});
我尝试使用waypoints插件来检测视图中的元素,但是如何使用与块id相同的id来标记li呢?
我使用:
$('#block3').waypoint(function(direction) {
$('.menu-features li').addClass('test')
});
但是它将测试类添加到所有的li元素,而不是视图中的当前元素。
发布于 2013-05-21 02:14:13
试试$(This).find(‘.menu-feature li').addClass('test');
https://stackoverflow.com/questions/16655469
复制相似问题