从一组数字中计算出一个百分比

Cha*_*ynn 1 javascript math percentage

我需要根据值(在html中设置)更改li的不透明度.

那么,这是一个html的例子:

<ul>
    <li class="test">3</li>
    <li class="test">23</li>
    <li class="test">6</li>
    <li class="test">9</li>
    <li class="test">11</li>
    <li class="test">16</li>
    <li class="test">19</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

因此,最高值(23)的不透明度为100%,而下一个最高值(19)的百分比较低,依此类推.

最低值应为10%.

我可以做所有的JavaScript,我只是在努力计算.有没有人知道如何解决这个问题?

Pat*_*k87 6

如果最高不透明度是100%而最低不透明度是10%,那么这就是你想要的:

  1. 确定最大值.最多称它为
  2. 确定最小值.叫它分钟.
  3. 为每个值分配不透明度(10 +((值 - 最小)/(最大 - 最小))*90)百分比.

更一般地,如果最高不透明度是X并且最低值是Y,那么公式是(Y +((值 - 最小值)/(最大 - 最小))*(X - Y)).