我有一个带注册表单的初始屏幕,我想要一个带注册链接的导航栏,只有在滚动到注册表单后才能显示。有没有办法用jquery做到这一点?
答案 0 :(得分:2)
当你滚动到包含导航栏的容器顶部(#container)时,我编写了这个jquery来将类'snap'添加到导航栏。 在这种情况下,我的'snap'类为我的导航提供了一个固定的位置(相对于身体),因此它会粘在屏幕的顶部。
如果您使用此代码,则可以更改#container以获取注册表单后面的块的ID。 我接下来要做的是默认隐藏你的导航栏可能{top:-200px;}?,然后为它添加一个类('snap' - 或者对你有意义的任何东西)来制作它出现 {top:0;} 。
$(window).scroll(function(scroll) {
var navStart = $('#container').offset().top;
var scroll = $(window).scrollTop();
if (scroll > navStart) {
$('nav').addClass('snap');
} else {
$('nav').removeClass('snap');
}
});
答案 1 :(得分:0)
您可以使用scrollTop函数和if语句来检查变量,例如从顶部开始的元素高度或位置。
https://api.jquery.com/scrollTop/
$(document).scroll(function() {
var scroll = $(this).scrollTop();
if (scroll > x) {
}
});