如何摆脱此页面闪烁?

时间:2018-07-10 07:53:15

标签: javascript jquery sticky scrolltop

我正在一个项目上,对于添加/删除粘性菜单类的jquery/js逻辑有问题,

示例页面: https://anish.kickpages.com/stickymenu/

尝试滚动非常慢,您会发现闪烁。

代码:

$(window).load(function() {
  var jsHeight = $('#section_o7kn8h_1531206224').parent().height(); 
  $('#section_o7kn8h_1531206224').parent().css('height', jsHeight);

  $('#section_o7kn8h_1531206224').parent().addClass('remove-jump');


  $(window).scroll(function(){
    if ($(window).scrollTop() >= 100) {
      $('#section_o7kn8h_1531206224').parent().css('height', 0);
      $('#section_o7kn8h_1531206224').addClass('fixed-header-top');
      $('#section_o7kn8h_1531206224').css('background', '');
    }
    else {
      $('#section_o7kn8h_1531206224').parent().css('height', jsHeight);
      $('#section_o7kn8h_1531206224').removeClass('fixed-header-top');
      $('#section_o7kn8h_1531206224').css('background', '');
    }
  });
});

3 个答案:

答案 0 :(得分:0)

访问了您的出色页面并缓慢向下滚动,但根本看不到任何闪烁。我正在Ubuntu 18.04上运行Firefox。

编辑:并不意味着将其发布为答案

答案 1 :(得分:0)

您可能希望将#section_o7kn8h_1531206224放在固定高度的div内。

答案 2 :(得分:0)

$(window).scroll(function(){
    if ($(window).scrollTop() >= 100) {
        $('#section_o7kn8h_1531206224').parent().css('height', 0);
        $('#section_o7kn8h_1531206224').addClass('fixed-header-top');
        $('#section_o7kn8h_1531206224').css('background', '');
    }
    else {
        $('#section_o7kn8h_1531206224').parent().css('height', jsHeight);
        $('#section_o7kn8h_1531206224').removeClass('fixed-header-top');
        $('#section_o7kn8h_1531206224').css('background', '');
    }
});

您可以删除上述内容,并将fixed-header-top类直接添加到html中的#section_o7kn8h_1531206224