jquery - 如何逐渐更改滚动条上导航栏的颜色?

标签 jquery css html navbar nav

我有一个透明的导航栏,我想逐渐改变颜色,直到它在 div 下面通过时最终变得不透明。我有这个:

$(document).scroll(function() {
  var dHeight = $(this).height()-$(window).height();
  if (dHeight >= $(this).scrollTop()) {
    $('nav').css('background', 'rgba(53,145,204,' + $(this).scrollTop() / dHeight + ')');
  }
});
body {
  margin: 0;
}
nav {
  background: rgba(53, 145, 204, 0);
  position: fixed;
  top: 0;
  width: 100%;
}
nav ul > li {
  display: inline-block;
}
.container {
  height: 1000px;
  margin-top: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<nav>
  <ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
  </ul>
</nav>
<div class="container">
  <div>
    Scroll me...
  </div>
</div>

... 到目前为止,但不是让页面的整个高度变得不透明,我希望它在到达 div 底部后变得不透明,有人可以帮助我吗?提前致谢

最佳答案

这里我获取了 div 的高度。因此,您的 nav 现在将在您需要的滚动条上变得不透明。

这里我附上了 fiddle 。希望这对您有所帮助。

jsfiddele

关于jquery - 如何逐渐更改滚动条上导航栏的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37818794/

相关文章:

Javascript 在表单提交到选项卡上输入

css - 在 HTML5 中将所有 div 对齐到中心

如果页面加载时鼠标位于菜单上,Javascript 菜单行为会反转

javascript - 使用 javascript/jquery 应用上标/下标标签

html - 如何在链接顶部水平居中工具提示

javascript - Jquery 预加载器动画有效,但它是一个噱头还是它实际上是在计算站点负载?

css - SVG 下方的居中文本

html - Bootstrap 列在悬停时不需要的移动

javascript - if 语句卡在 else

javascript - 用 jQuery 包装 div