【问题标题】:Change ul style on scroll to div将滚动时的 ul 样式更改为 div
【发布时间】:2013-05-18 21:36:07
【问题描述】:

我有四个<ul>s 的菜单,在页面的容器中我有四个框。 第一个 ul 用于第一个盒子,第二个 ul 用于第二个盒子,第三个 ul.... 继续

当我滚动到第一个框时,ul 的样式更改为不同的样式,然后当我滚动到第二个框时,第二个 ul 的样式更改为相同的不同样式和第一个 ul 的样式样式恢复到原来的样式.. 就这样。

问题是当我滚动到最后一个框时,第四个ul 样式更改为不同的样式,但是当我暂停该框并转到没有框的空间时,第四个ul 的样式仍然是相同的样式并且不会恢复到您在此处看到的原始样式:

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

我尝试了类似的方法 (http://ge.tt/6PeKY1h/v/0),但如您所见,它并没有 100% 有效。我还解释了一些事情以及代码中我的问题到底在哪里。 代码在这里:http://jsfiddle.net/YZvKX/

【问题讨论】:

  • 可以添加你使用的代码吗?
  • 您可以下载代码,只需在我发布的页面中按下载(这里先ge.tt/6YcYZ1h/v/0,然后我尝试了ge.tt/6PeKY1h/v/0
  • 很抱歉这么坦率,但是是什么让你认为我想要你的代码在我的硬盘上,如果你想从人们那里得到答案,不要让他们做事!确保他们拥有所需的信息,而无需先设置整个开发环境!所以请确保:1. 在帖子中添加您的代码 2. 使用您的代码 (jsfiddle.net) 创建一个 JSFiddle 3. 让我们开始吧一些答案! :D
  • 我不能在 jsfiddle 上发布,它的窗口很小,无法获取页面
  • 然后使用jsbin.com

标签: jquery css html scroll


【解决方案1】:

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

您可以简单地使用 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/

【讨论】:

    猜你喜欢
    • 2013-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多