滚动到div时更改ul样式

时间:2013-05-18 21:36:08

标签: jquery css html scroll

我有四个<ul>的菜单,在页面的容器中我有四个方框。 第一个框的第一个ul,第二个框的第二个ul,第三个ul ....然后继续

当我滚动到第一个框时,第一个ul的样式更改为不同的样式,然后当我滚动到第二个框时,第二个ul的样式更改为相同的不同样式和第一个{ {1}}的风格回归原来的风格......就像那样。

问题是当我滚动到最后一个框时,第四个ul样式更改为不同的样式,但是当我暂停框并进入没有框的空格时,第四个ul的样式仍然是相同的风格,并没有回到它的原始风格,你可以在这里看到:

http://ge.tt/6YcYZ1h/v/0

我尝试了类似这样的事情(http://ge.tt/6PeKY1h/v/0)但是它没有100%正常工作,你可以看到。我还解释了一些事情以及我的问题在代码中的确切位置。 此处的代码:http://jsfiddle.net/YZvKX/

1 个答案:

答案 0 :(得分:0)

不确定您是否仍在寻找这个问题的答案,但这里有一个小提琴。

您可以简单地使用jquery添加和删除类来更改按钮的样式。

$(".scroll").click(function (event) {
    $('#menu li').addClass('menutext');
    event.preventDefault();
    $('html,body').animate({
        scrollTop: $(this.hash).offset().top - 59
    }, 800);
    $(this).parent().removeClass('menutext');
    $(this).parent().addClass('menutext2');
});

这是小提琴。 http://jsfiddle.net/YZvKX/1/