https://blackrockdigital.github.io/startbootstrap-freelancer/
就像本示例中所示,我想在移动到每个锚点时在每个菜单文本上提供背景色。我更喜欢不使用引导程序并且仅使用常规javascript。
我的想法是添加一个看起来像
function changeColor() {
if (window.scrollY == sectionClass.offsetTop) {
document.querySelector('.sectionClass').classList.add("newColorClass");
} else {
document.querySelector('.sectionClass').classList.remove("newColorClass");
}
}
当滚动位置位于节的offsetTop的位置时,该方法将在元素中添加具有背景颜色样式的类。
但这似乎不符合我的预期。
任何想法?
最佳答案
这些是类。不是锚。
如果希望它检测锚点,则必须为#。
但是更重要的是sectionClass.offsetTop
,sectionClass是否在任何地方都定义为变量?尝试window.scrollY == document.querySelector('.sectionClass').offsetTop
请注意,这不适用于“每个类”,它可能仅适用于第一个类。您需要为每个querySelector循环