[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: я опять туплю
r3al
дано: points = 102; min = 2; max = 2340;
points - это очки,
min - минимальное значение очков
max - масимальное значение очков

так же есть 4 цветовых диапазона, red, orange, yellow, green

длины диапазонов:
red от min до max/4, orange от max/4 до max/2, yellow от max/2 до max-max/3, green от max-max/3 до max

у меня есть шкала у шалы свой цвет, в зависимости от points выбирается цвет, мне нужно закрасить цветом (width = ?%) часть шкалы от 0 до points как посчитать это значение для каждого диапазона?
AlmazDelDiablo
red = min;
orange = max / 4;
yellow = max /2;
green = max - max / 3;

Забиваешь результаты в массив. Далее, в цикле, количество очков сравниваешь со значением, соответствующим цвету. Если кол-во очков больше, чем это число, задаёшь этот цвет шкале, НЕ прерывая цикла. Как только пошла итерация, на которой кол-во очков стало меньше текущего числа, делаешь break.

_____________
Блог | VK | GitHub | Twitch
r3al
нене, я как раз как цвет то выбрать понимаю, а как заполнить полоску цветом? ну точнее как выбрать нужный % заполнения в каждом диапазоне, где размещен points
r3al
т.е по сути это как лвл, у тебя была красная полоска, заполнена на 48% и тут ты получил лвлап и тебя стала полоска заполнена на 12 процентов, но уже оранжевая.. и т.п. вот как процент заполнения полоски определить?
r3al
Это троллинг, да?) как $len найти для каждого цвета?
css

#meter{width:200px}

.red{background-color:red}
.green{background-color:green}
.yellow{background-color:yellow}
.orange{background-color:orange}

php

$meter = '<div id="meter"><div id="rating" class="{color}" style="width:{len}%"></div></div>';

$rating = 124;
$min = 12;
$max = 2040;

$len = 0;
$color = 'red'

if ( $rating > $max-$max/4 )
{
$color = 'green';
}
elseif ( $rating < $max-$max/4 && $rating > $max/2 )
{
$color = 'yellow';
}
elseif ( $rating < $max/2 && $rating > $max/4 )
{
$color = 'orange';
}

echo str_replace( Array( '{color}', '{len}' ),Array( $color, $len ), $meter );
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.