我使用slideUp功能上下滑动广告拦截消息,但是当您看到广告拦截警报时,向下滚动后,导航栏需要一秒钟才能调整到顶部。它给整个过程带来了错误的外观 - 这种变化应该是即时和完美的。
您可以在此处查看示例:https://www.mallyear.com/search?q=phone
用于slideUp函数的代码是:
lst = ['AAAAAAAB', 'AAAAAABA', 'AAAAABAA', 'AAAAAABB', 'AAAAABAB', 'AAAAABBA']
要查看此广告拦截通知,需要使用" Ad Blocker Plus"在谷歌浏览器上,你应该让它运行。这个错误显示在向下滚动一秒钟但是在那里。非常感谢您的帮助
答案 0 :(得分:0)
我无法确定这是您正在寻找的内容,但我想您只想在幻灯片完成后更改t3-header的css,对吧?
如果是这样,幻灯片完成后你想要发生的任何事情应该是作为slideUp / slideDown函数的附加参数传递的函数。例如:
jQuery('#adblocker').slideUp("fast", function() {
jQuery('#t3-header').css({position: 'fixed', top: '0px'});
});
如果这不是问题的原因,我道歉!
修改强>
评论之后我想知道你是否应该一起剪切slideUp动画,并且只要用户滚动到adblock div之后就让navBar保持固定在顶部(据我理解为150px)。我会将代码更改为:
if(jQuery(window).scrollTop() > 150){
jQuery('#t3-header').css({position: 'fixed', top: '0px'});
}else{
jQuery('#t3-header').css({position: 'static'});
}
编辑2
还有一个选项,但这需要更改元素的设置方式。
让广告拦截器向上滑动的问题是,根据定义,用户已经向下滚动了一下,所以当广告拦截器div完全滑动时,导航栏已经过了滚动 - 顶部,只有在css更改为固定后再次快速恢复。
所以你需要的是让navbar和adblocker div都在一个固定的容器div中。这将无需更改导航栏本身的css,您可以在adblocker上使用slideUp动画,并在正确的位置结束。所以你有:
<div id ="navContainer" style="position:fixed; top:0px">
<div id = "adblocker" class = "container-fluid">
...
</div>
<div id = "t3-header" class="container t3-header">
...
</div>
</div>
(如果您对当前所拥有的内容感到满意,可以将该css放入您的css文件中)
在javascript中你有:
if(jQuery(window).scrollTop() > 1){
jQuery('#adblocker').slideUp("fast")
}else{
jQuery('#adblocker').slideDown("fast")
}
我怀疑这会提供你所希望的效果。