更改 header 滚动背景的颜色
Changing colour of header background on scroll
我正在尝试为滚动的 WordPress 网站更改 header 的背景颜色。我正在使用 scrollTop 函数来实现此目的,但无论出于何种原因,该值当前都作为函数返回。使用下面的代码将滚动位置记录到控制台我得到这个:
ƒ (e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}
jQuery(document).ready(function($) {
$(window).scroll(function() {
console.log($(window).scrollTop());
});
});
由于滚动位置没有作为值返回,所以我不能用它来为我的 header 编写逻辑。据我所见,scrollTop 最初应该登录到控制台 0,然后随着 window 滚动而增加。我想知道是否还有其他人 运行 遇到过同样的问题。
我给你举了一个滚动时使用addClass()
方法设置标题颜色的例子。当返回滚动位置时,删除具有所需颜色的 class - removeClass()
:
if ($(window).scrollTop() > 0) {
$("p").addClass("color_scroll");
} else {
$("p").removeClass("color_scroll");
}
$(document).ready(function() {
$(window).scroll(function() {
if ($(window).scrollTop() > 0) {
$("p").addClass("color_scroll");
} else {
$("p").removeClass("color_scroll");
}
})
})
body {
height: 5000px;
}
p {
position: sticky;
top: 0;
}
p.color_scroll {
color: green;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p>Title</p>
我正在尝试为滚动的 WordPress 网站更改 header 的背景颜色。我正在使用 scrollTop 函数来实现此目的,但无论出于何种原因,该值当前都作为函数返回。使用下面的代码将滚动位置记录到控制台我得到这个:
ƒ (e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}
jQuery(document).ready(function($) {
$(window).scroll(function() {
console.log($(window).scrollTop());
});
});
由于滚动位置没有作为值返回,所以我不能用它来为我的 header 编写逻辑。据我所见,scrollTop 最初应该登录到控制台 0,然后随着 window 滚动而增加。我想知道是否还有其他人 运行 遇到过同样的问题。
我给你举了一个滚动时使用addClass()
方法设置标题颜色的例子。当返回滚动位置时,删除具有所需颜色的 class - removeClass()
:
if ($(window).scrollTop() > 0) {
$("p").addClass("color_scroll");
} else {
$("p").removeClass("color_scroll");
}
$(document).ready(function() {
$(window).scroll(function() {
if ($(window).scrollTop() > 0) {
$("p").addClass("color_scroll");
} else {
$("p").removeClass("color_scroll");
}
})
})
body {
height: 5000px;
}
p {
position: sticky;
top: 0;
}
p.color_scroll {
color: green;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p>Title</p>