заполнить изображение на основе числа / процента цветом в js

0

Я ищу возможность заполнить изображение, основанное на процентах.

Есть ли динамический способ сделать это или проще создавать изображения за определенный интервал?

Я использую угловые и вам нужно установить процент от 1 до 5 рейтинговых систем от AJAX.

Изображение 174551

Теги:
image

2 ответа

1
Лучший ответ

Проверьте этот ответ: заполните процент SVG и выполните анимацию заполнения

Что вы можете сделать, так это создать SVG- форму звезды:

<svg width="100px" height="100px" viewBox="0 0 100 100"
     xmlns="http://www.w3.org/2000/svg" version="1.1">
  <polygon fill="red" stroke="blue" stroke-width="10" 
            points="350,75  379,161 469,161 397,215
                    423,301 350,250 277,301 303,215
                    231,161 321,161" />
</svg>

А затем примените линейный градиент к нему с помощью smth:

<linearGradient y2="100%" x2="100%" y1="100%" x1="0%" id="F1g">
  <stop stop-color="#00FF00" offset="0%" id="F1gst1"/>
  <stop stop-color="#FFFFFF" offset="0%" id="F1gst2"/>
</linearGradient>

Каким-то образом этот способ быстрее внедряться и быть более гибким и менее интенсивным в сети, чем создание и отображение нескольких постепенных изображений.

  • 0
    Я тоже это нашел; Я попросил просто сделать, если есть способ в сочетании с javascript.
  • 0
    этот пост уже содержит некоторые JS
1

Просто используя два изображения и немного javascript, я уверен, что вы можете сделать это легко. Просто имейте одно изображение, прозрачное, где вы хотите, чтобы оно было заполнено. Затем поместите изображение того же размера, только что заполненного цветом заполнения, сразу за первым изображением (используйте для этого свойство css z-index) внизу. С помощью javascript переместите его, чтобы "заполнить" первое изображение. Вот ссылка на jsFiddle, демонстрирующий принцип

Это определенно не так чисто, как решение с SVG, но по крайней мере вы можете использовать его с почти любым изображением.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню