我的固定导航栏上有一个横幅。当我滚动它,我的导航栏到达浏览器的顶部时,它开始在那个位置不停地闪烁。
我认为这与jquery toggleClass()有关,但我不知道如何修复它。
当我在该位置检查导航栏时,它只是不断添加和删除has-monster-banner类,导致它闪烁。
googletag.pubads().addEventListener('slotRenderEnded', function(event) {
if (event.slot.getAdUnitPath() === '/1025113/1220x200' && !event.isEmpty) {
jQuery('body').addClass('has-monster-banner');
jQuery(window).scroll(function() {
jQuery('body').toggleClass('has-monster-banner', jQuery(window).scrollTop() < 220);
});
}
}我如何防止这种情况发生?
发布于 2017-04-10 23:00:06
每次使用jquery时,当您遇到闪烁的元素时,请考虑是什么原因造成的。显然,您的切换函数将永远被调用。我想这可能和scrollTop有关。
你应该做的是决定什么时候它应该停止调用那个函数。然后,通过使用标志变量执行以下操作
var flag = false;
if(mycondition && !flag){
Do whatever you want...
flag = true;
}
if(restart condition){
flag = false;
}https://stackoverflow.com/questions/43326377
复制相似问题