【问题标题】:Fixed full width nav bar on loading修复了加载时的全宽导航栏
【发布时间】:2020-12-12 23:33:33
【问题描述】:

请记住,我不是程序员。我正在使用现有的网站模板。我想更改代码以在加载而不是滚动时显示我的标题、徽标和菜单。该模板可以在以下位置找到:

http://seriftemplates.com/excell/

它有代码:

<script type="text/javascript">

$(window).scroll(function () {
  if ( $(this).scrollTop() > 940 && !$('#header, #logo, #menu').hasClass('open') ) {
    $('#header, #logo, #menu').addClass('open');
    $('#header, #logo, #menu').slideDown();
   } else if ( $(this).scrollTop() <= 940 ) {
    $('#header, #logo, #menu').removeClass('open');
    $('#header, #logo, #menu').slideUp();
  }
});
</script>

我将脚本更改为在最后一行中使用 slideDown 而不是 slideUp:

<script type="text/javascript">

$(window).scroll(function () {
  if ( $(this).scrollTop() > 940 && !$('#header, #logo, #menu').hasClass('open') ) {
    $('#header, #logo, #menu').addClass('open');
    $('#header, #logo, #menu').slideDown();
   } else if ( $(this).scrollTop() <= 940 ) {
    $('#header, #logo, #menu').removeClass('open');
    $('#header, #logo, #menu').slideUp();
  }
});
</script>

这使得该栏立即出现,而不是在页面向下滚动一段距离后出现。当我再次向上滚动时,它也停止了消失。

页面在这里:https://www.valledesigns.com/scanning/index.html

但是,我真正想要的是我的顶部标题、徽标和菜单在加载时出现并在页面滚动时保持在那里。可以更改此 javascript 函数来执行此操作吗?

大卫

【问题讨论】:

    标签: javascript scroll


    【解决方案1】:
    window.onload = ()=>{
        $('#header, #logo, #menu').addClass('open');
        $('#header, #logo, #menu').slideDown();
    }
    

    只需将类设置为“打开”并向下滑动

    将脚本标签替换为

    <script type="text/javascript">
    window.onload = ()=>{
        $('#header, #logo, #menu').addClass('open');
        $('#header, #logo, #menu').slideDown();
    }
    </script>
    

    【讨论】:

    • 非常感谢您的帮助 - 非常感谢您抽出宝贵时间回复。我知道这不会有什么复杂的,但经过 8 小时的尝试没有成功,我不得不请教专家!我刚刚用你的代码替换了脚本标签,它工作了。太棒了!
    猜你喜欢
    • 1970-01-01
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 2018-12-03
    • 1970-01-01
    • 2012-10-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多