如何在100vh滚动后切换类
How to toggle class after 100vh scroll
如何使此函数在滚动100vh
后添加类
目前它在850px
之后添加了类。
$("document").ready(function($){
var nav = $('#verschwinden');
$(window).scroll(function () {
if ($(this).scrollTop() > 850) {
nav.addClass("doch");
} else {
nav.removeClass("doch");
}
});
});
在纯JavaScript中,使用window.innerHeight
获取视口高度,使用elScrollable.scrollTop
获取元素的scrollTop
使用classList.toggle("className", statement)
切换类:
const elScrollable = document.querySelector("html")
const elNav = document.querySelector("#nav");
const handleNav = () => {
const viewportHeight = window.innerHeight;
const scrollTop = elScrollable.scrollTop;
elNav.textContent = `Scrolled: ${scrollTop / viewportHeight}`
elNav.classList.toggle("is-active", scrollTop >= viewportHeight);
};
addEventListener("scroll", handleNav)
addEventListener("resize", handleNav)
handleNav();
* {
box-sizing: border-box;
margin: 0;
}
#nav {
position: sticky;
top: 0;
background: silver;
}
#nav.is-active {
background: gold;
}
<nav id="nav">NAV</nav>
<p style="min-height: 300vh">
scroll down until #nav becomes golden...
</p>
使用jQuery可以使用$(window).height()
来获得视口高度,使用$scrollable.scrollTop()
来获得HTML(或任何其他)元素的滚动量
使用.toggleClass("className", statement)
切换类:
const $window = $(window);
const $scrollable = $("html");
const $nav = $("#nav");
const handleNav = () => {
const viewportHeight = $window.height();
const scrollTop = $scrollable.scrollTop();
$nav
.text(`Scrolled: ${scrollTop / viewportHeight}`)
.toggleClass("is-active", scrollTop >= viewportHeight);
};
$window.on("scroll", handleNav)
$window.on("resize", handleNav)
handleNav();
* {
box-sizing: border-box;
margin: 0;
}
#nav {
position: sticky;
top: 0;
background: silver;
}
#nav.is-active {
background: gold;
}
<nav id="nav">NAV</nav>
<p style="min-height: 300vh">
scroll down until #nav becomes golden...
</p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script>
相关文章:
- 幻灯片滚动javascript不起作用
- 将视口底部滚动到元素底部
- jQuery Lazy加载动画滚动
- 设置滑块分区上的滚动
- 结合jQuery和jetpack无限滚动
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- 滚动到容器中的下一个元素-几乎到了
- 只覆盖箭头键滚动事件
- Javascript如何找到滚动事件的来源
- Image赢得't隐藏在滚动jQuery上
- Safari(Mac OS)上的jQuery平滑滚动问题
- CSS-若窗口太小,滚动条会出现在“表格”单元格上
- 禁用(而不是隐藏)浏览器滚动条
- JavaScript上下滚动不可预测
- 滚动和表格
- 谷歌地图劫持了iphone's滚动(触摸事件)-如何恢复
- 我希望只有在我滚动页面后才能显示我的返回页首图标
- 点击正文仅在第一次点击时向下滚动 100vh
- 如何在100vh滚动后切换类
- 更改滚动行为:以100vh的增量滚动