【问题标题】:How to set a min/max value for variable increasing/decreasing with scrollTop?如何使用scrollTop为变量增加/减少设置最小/最大值?
【发布时间】:2019-12-09 08:18:49
【问题描述】:

我有一个名为yPos 的变量根据滚动时$(window).scrollTop() 的值增加和减少。我想设置一个最大值和最小值,以便yPos 变量不能低于最小值并且不能大于最大值,但仍会根据scrollTop 而变化。我该怎么做呢?

【问题讨论】:

  • 你试过什么?改变 yPos 的代码在哪里?
  • this link 回答你的问题了吗?
  • 你想阻止用户到某个滚动区域吗?
  • 回答了!请检查

标签: javascript jquery


【解决方案1】:
const max = yourMax;
const min = yourMin;

let yPos = $(window).scrollTop();

if(yPos > max) {
  yPos = max;
}
else if(yPos < min) {
  yPos = min;
}

【讨论】:

    【解决方案2】:

    $(document).ready(function(){
      var scroll = 0;; 
      var maxvalue = 100;
      var minvalue = 10;
      var temp = 0;
      $(document).scroll(function(){  
        temp = $(window).scrollTop();
        if(temp > maxvalue)
        {
         temp = maxvalue;      
        }
        if(temp < minvalue){
          temp = minvalue;
        }
        scroll = temp;
       
            
         
        console.log(scroll);
      });
    });
    body{
      height:200vh;
    }
    &lt;script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;

    【讨论】:

      【解决方案3】:

      使用类似的东西。

      var yPos= 0;
      var min_value = 10;
      var max_value = 100;
      if($(window).scrollTop() >= min_value && $(window).scrollTop()<= max_value)
      {
        yPos = $(window).scrollTop();
      }
      

      注意这只是一个逻辑,请不要复制粘贴到您的代码中。

      【讨论】:

      • 为什么它不起作用?这只是一个逻辑只是如何做到这一点,而不是用小提琴或类似的东西的完整答案。
      猜你喜欢
      • 1970-01-01
      • 2016-03-14
      • 1970-01-01
      • 2014-04-26
      • 2014-02-07
      • 2016-01-05
      • 2013-04-14
      • 2019-05-23
      • 2018-05-30
      相关资源
      最近更新 更多