Javascript 用于动态调整菜单大小的scrollTop功能
我试图创建一个动态菜单,当用户向下滚动时,它会自动调整大小。在多次搜索之后,我将此脚本添加到html文件的头部:Javascript 用于动态调整菜单大小的scrollTop功能,javascript,jquery,html,css,resize,Javascript,Jquery,Html,Css,Resize,我试图创建一个动态菜单,当用户向下滚动时,它会自动调整大小。在多次搜索之后,我将此脚本添加到html文件的头部: <script type="text/javascript"> $(function() { var header = $(".large"); $(window).scroll(function() { var scroll = $(window).scrollTop(); if (scroll >= 50)
<script type="text/javascript">
$(function() {
var header = $(".large");
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 50) {
header.removeClass('large').addClass("small");
} else {
header.removeClass("small").addClass('large');
}
});
});
</script>
为了验证脚本是否激活,我已经更改了小类的颜色,但它仍然没有响应。你能帮助我吗?谢谢您的问题在这一行:
var header = $(".large");
当您从大类更改为小类时,此选择器将不再工作
此外,缓存该值是无用的,因为选择器会根据新的类值进行更改
因为您使用窗口函数,所以文档就绪(即:$(function(){)是无用的
我的代码段(我使用了一个div和一些文本,而不是标题):
$(窗口)。滚动(函数(){
var scroll=$(窗口).scrollTop();
如果(滚动>=50){
$('.large').removeClass(“large”).addClass(“small”);
}否则{
$('.small').removeClass('small').addClass('large');
}
});
div.large{
位置:固定;
宽度:100%;
身高:20%;
背景色:#00bff;
顶部:0px;
左:0;
z指数:1;
}
小分区{
位置:固定;
宽度:100%;
身高:7%;
背景色:#000000;
顶部:0px;
左:0;
z指数:1;
}
bbbbbbbbbbbbbbbbbbbbbbbb
bbbbbbbbbb
a
a
a
a
a
a
a
a
a
a
a
a
a
var header = $(".large");