Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery时奇怪的导航栏结巴_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 使用jQuery时奇怪的导航栏结巴

Javascript 使用jQuery时奇怪的导航栏结巴,javascript,jquery,html,css,Javascript,Jquery,Html,Css,在上,我在顶部有一个导航栏。 现在,使用jQuery,我通过添加一个名为.shrink的CSS类来缩小导航栏 当scrollTop超过100px时。 该功能本身运行良好。类被应用,导航栏变小了,但我面临一个口吃问题。如果你从顶部滚动一点(我相信大约100像素),导航栏就会开始疯狂地上下跳跃。我不知道问题的原因,也不知道如何解决。有人知道解决办法吗 $(文档).on(“滚动”,函数(){ 如果($(文档).scrollTop()>100){ $(“标题”).addClass(“收缩”); }否则

在上,我在顶部有一个导航栏。 现在,使用jQuery,我通过添加一个名为.shrink的CSS类来缩小导航栏 当scrollTop超过100px时。 该功能本身运行良好。类被应用,导航栏变小了,但我面临一个口吃问题。如果你从顶部滚动一点(我相信大约100像素),导航栏就会开始疯狂地上下跳跃。我不知道问题的原因,也不知道如何解决。有人知道解决办法吗

$(文档).on(“滚动”,函数(){
如果($(文档).scrollTop()>100){
$(“标题”).addClass(“收缩”);
}否则{
$(“标题”).removeClass(“收缩”);
}
});
header.is-fixed{
位置:粘性;
z指数:9999;
左:0;
右:0;
排名:0;
填充:1.5雷姆0;
过渡:0.2s;
背景色:#333;
}
头.收缩{
填充:0.750;
}

满足于此

首先,当您使用非常敏感的滚动外设(如mac trackpad)时,最有可能出现此错误。 使用普通的鼠标滚轮可以大大减少这种机会

现在是代码

您需要使用的位置:固定;在导航栏上,由于position sticky以某种方式改变了滚动条的计算,使压缩进入某种循环,相对于position fixed,您需要考虑滚动条位置0处内容的偏移量,因为position fixed不会向下推下一个子项,所以请使用边距top或其他方式

我已经在你的网站上用chrome inspector做了一个测试 “header.is fixed”用于定位固定并将102px边距添加到此类的firts节 “英雄是媒体,以文本为中心,手机是bg img,以文本为中心” 再也没有虫子了


希望这能有所帮助首先,当你使用非常敏感的滚动外设(如mac trackpad)时,这个bug最有可能出现。 使用普通的鼠标滚轮可以大大减少这种机会

现在是代码

您需要使用的位置:固定;在导航栏上,由于position sticky以某种方式改变了滚动条的计算,使压缩进入某种循环,相对于position fixed,您需要考虑滚动条位置0处内容的偏移量,因为position fixed不会向下推下一个子项,所以请使用边距top或其他方式

我已经在你的网站上用chrome inspector做了一个测试 “header.is fixed”用于定位固定并将102px边距添加到此类的firts节 “英雄是媒体,以文本为中心,手机是bg img,以文本为中心” 再也没有虫子了


希望这有助于不出现问题。哪个浏览器?谷歌浏览器。我只是尝试了一下Edge,但它似乎并没有持续存在。在chrome中也看不到它。看不到问题。哪个浏览器?谷歌浏览器。我只是在Edge上试了一下,它似乎并没有在那个里持续。在chrome上也看不到它。太棒了!这完全解决了问题。所以,当使用position时,它似乎是唯一会持续存在的东西:sticky。使用位置:这里的解决方案是固定的。太好了!这完全解决了问题。所以,当使用position时,它似乎是唯一会持续存在的东西:sticky。使用位置:这里的解决方案是固定的。