jquery - 如何使用 jQuery 输入 vh 属性而不是 px 来滚动导航?

标签 jquery css viewport-units

我正在尝试创建一个在 100vh 后淡入的导航,但我只能找到一个使用 px 值而不是 vh 的示例。有没有办法将窗口高度值返回到 jQuery 中来实现此目的?提前致谢<3

我需要它等于 100vh,或者等于窗口视口(viewport)的高度,而不是 860px

      (function($) {
      $(document).ready(function(){
          $(window).scroll(function(){
              if ($(this).scrollTop() > 860) {
                  $('#navbar').fadeIn(200);
              } else {
                  $('#navbar').fadeOut(200);
              }
          });
      });
  })(jQuery);

最佳答案

不,这是不可能的。但 vh 定义为视口(viewport)的百分比高度。这样就可以得到视口(viewport)高度:

$(window).height();

它将返回 860px(在您的示例中),然后将其除以 100,您就得到了 1vh 单位的像素数。

var viewportHeight = $(window).height(); // == 100vh
 (function($) {
      $(document).ready(function(){
          $(window).scroll(function(){
              if ($(this).scrollTop() > viewportHeight) {
                  $('#navbar').fadeIn(200);
              } else {
                  $('#navbar').fadeOut(200);
              }
          });
      });
  })(jQuery);

关于jquery - 如何使用 jQuery 输入 vh 属性而不是 px 来滚动导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48259180/

相关文章:

html - 在移动设备上将水平形式转换为垂直形式

html - overflow hidden 的折叠 div

javascript - 来自 AJAX 请求时,toggleClass 不起作用

javascript - jQuery 获取 AJAX 数据均不起作用

javascript - 为什么有些人在 JavaScript 中写出不同的多重条件?

css - 根据高度缩放 ​​div 宽度

css - 如何防止 vh-units 忽略滚动条?

javascript - 用于在滚动时加载数据(从数据库)的 JQuery 插件

css - 边框干扰绝对定位

html - 放在一边与 body 相同的高度