【问题标题】:Calculating the percentage of a slider计算滑块的百分比
【发布时间】:2014-11-29 19:36:01
【问题描述】:

假设我有一个最小值为 -1,最大值为 1 的滑块。如果用户将滑块手柄放在中间,那么我们的值为 0。我只是不知道如何将其计算为 -1 到 1 的 50%

然后我需要做与我相反的事情,首先获取滑块的百分比(比如 50%)。我现在需要计算 -255 到 255 的 50% 是多少(应该返回 0)。我已经被这个问题困扰了一段时间,如果我能得到任何帮助,我将不胜感激。

提前致谢!

【问题讨论】:

    标签: php jquery math


    【解决方案1】:

    你有两个刻度,一个从 0 到 100,另一个从 -255 到 255。从一个到另一个的公式很简单:

    • 进度 =(位置 - 分钟)/范围
    • new_pos = new_min + new_range * 进度

    请注意,百分比已经表示此“进度”值,如 20% = (20 - 0)/100。另请注意,范围可以定义为 max - min。

    所以假设你从 -255 到 255 包括在内,那就是 511 个离散值(计算 0,假设你使用 int's),并且假设百分比是一个介于 0 和 100 之间的值(而不是介于 0 和 1 之间):

    • 从百分比到像素:-255 + 511 * 百分比 / 100

    • 从像素到百分比:0 + 100 * (pixel + 255) / 511

    从 -1 到 1 的比例也是如此,我猜它使用连续值,因此具有区间 [-1, 1] 的大小范围,即 min = -1 和 range = 2

    【讨论】:

      【解决方案2】:

      这应该可以解决问题:

      function percentage($slider){
       return ($slider + 1) * 50;
      }
      
      function slider($percentage){
      return ($percentage/100) * 510 - 255;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-01
        • 2021-01-10
        • 2022-11-14
        • 1970-01-01
        • 2015-10-11
        • 2015-09-04
        • 2013-03-22
        相关资源
        最近更新 更多