javascript - 想要在 js 越过某个位置时更改设置

标签 javascript jquery html css twitter-bootstrap

我正在创建一个导航栏,我正在为此使用 Bootstrap 。

我使用 padding top 60px 而我的导航是透明的

enter image description here

这是我的导航代码

 .navbar-default .navbar-nav > li > a {
   padding-top: 60px;
 }

和我的导航栏品牌类

 .navbar-brand{
   padding-top:30px;
 }

now when the navbar scrolls > 100 it looks like this

enter image description here

现在我想在滚动时将其设置为 30px > 100 这是我的 js 代码

 var a = $(".navbar-default").offset().top;
 $(document).on('scroll', function() {
 if ($(this).scrollTop() > 100) {
    $('.navbar-default').addClass("scrolled");
    $(".navbar-default .navbar-brand").css({
        "color": "#a96258"
    });
 } 
 else {
    $('.navbar-default').removeClass("scrolled");
    $(".navbar-default .navbar-brand").css({
        "color": "#fff"
    });
  }
});

我的滚动类

 .navbar-default.scrolled{
   background-color: #fff;
   border-bottom: 1px solid #BBB9BE;
   box-shadow: 0,0,2px,#BBB9BE;
   color: #000;
   min-height: 80px;
 }

最佳答案

尝试将其附加到 window.scroll,如下所示:

$(window).scroll(function() {
    if ($(window).scrollTop() > 100) {
        $('.navbar-default').addClass("scrolled");
        $(".navbar-default .navbar-brand").css({
        "color": "#a96258"
    });
  } 
  else {
    $('.navbar-default').removeClass("scrolled");
    $(".navbar-default .navbar-brand").css({
        "color": "#fff"
    });
  }
});

或者你可以添加一个事件监听器,如下所示

var element = $(".navbar-default");
window.addEventListener('scroll', function() {
     $(window).scrollTop() > 100 ? 
     $(element).addClass('scrolled',function(){
             $(".navbar-default .navbar-brand").css({
                    "color": "#a96258"
             });
     }) : 
     $(element).removeClass('scrolled',function(){
             $(".navbar-default .navbar-brand").css({
                    "color": "#fff"
             });
     });
});

关于javascript - 想要在 js 越过某个位置时更改设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29816570/

相关文章:

javascript - 如何将数组传递给java servlet

javascript - ParseInt() 上出现 NaN 错误

javascript - 原型(prototype) Event.observe 替代方案?

javascript - 如何让 JSLint 忽略代码片段?

javascript - 实现JQUERY中遍历ul li标签的函数

jquery - anchor 悬停背景颜色按百分比变化

html - 在 Chrome 中呈现为破折号的表中相邻列中的 CSS 虚线边框问题

javascript - Canvas setLineDash 和 lineDashOffset 不在 iOS/Safari 中重置?

javascript - 内联 CSS 和 JavaScript 真的会影响网站 SEO 吗?

javascript - "IF textTrue ELSE textFalse"的正则表达式