首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据屏幕宽度在不同的滚动点隐藏徽标

如何根据屏幕宽度在不同的滚动点隐藏徽标
EN

Stack Overflow用户
提问于 2019-08-19 21:04:01
回答 1查看 48关注 0票数 0

当徽标滚动到72像素时,它会试图隐藏在粘性导航上,但在较小的屏幕上,则需要隐藏到150像素。

我试图将其隐藏在72像素处,但在较小的屏幕上,它开始闪烁,因为隐藏的元素会导致滚动点发生变化,因此它再次显示,进入循环。

代码语言:javascript
复制
jQuery(document).ready(function() {
  if ($(window).width() <= 992){    
    jQuery(window).scroll(function() {
      if (jQuery(this).scrollTop() > 150) {
        jQuery('.fl-page-header-logo').fadeOut(500);
      } else {
        jQuery('.fl-page-header-logo').fadeIn(500);
      }
  } else {
    jQuery(window).scroll(function() {
      if (jQuery(this).scrollTop() > 72) {
        jQuery('.fl-page-header-logo').fadeOut(500);
      } else {
        jQuery('.fl-page-header-logo').fadeIn(500);
      }
  });
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-20 09:09:02

您不能关闭jquery滚动函数。(缺少});

代码语言:javascript
复制
jQuery(window).scroll(function() {
      if (jQuery(this).scrollTop() > 150) {
        jQuery('.fl-page-header-logo').fadeOut(500);
      } else {
        jQuery('.fl-page-header-logo').fadeIn(500);
      }
});

不知道为什么否则就不行了。不管怎样,试试这个。它对我有用,而且更干净:

代码语言:javascript
复制
var windowsWidth = $(window).width();

if (windowsWidth <= 992){ 
    fadeOutLogo(72);
} else {
    fadeOutLogo(150);
}

function fadeOutLogo(offset){
  jQuery(window).scroll(function() {
    if (jQuery(this).scrollTop() > offset) {
      jQuery('.fl-page-header-logo').fadeOut(500);
    } else {
      jQuery('.fl-page-header-logo').fadeIn(500);
    }
  });
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57563938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档