Dismiss Notice
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Как сделать изменение цвета рейтинга, в зависимости от числа?

Discussion in 'Свободное общение' started by sergid, Nov 10, 2018.

10.11.18 в 22:50
15.11.19 в 04:38
11
1,068
0
  1. TopicStarter Overlay
    sergid

    Забанен

    Joined:
    May 18, 2017
    Messages:
    157
    Best Answers:
    0
    Ratings:
    +12 / 23 / -0
    Всем привет мастера.

    Как сделать переменную, которая будет менять цвет, в зависимости от рейтинга. (или любые другие методы)

    Например всё что ниже 3.0 красный (2.9 - 2.3- и.т.д)

    Например всё что выше 3.0 до 5.0 серый (3.9 - 9.3- и.т.д)

    Например всё что выше 5.0 до 9.0 зелёный (7.9 - 8.3- и.т.д)

    Буду благодарен, на пряник по вашему кошельку. Заранее спасибо.
     
  2. synlivcho

    PRO Users

    Joined:
    Oct 24, 2018
    Messages:
    749
    Best Answers:
    2
    Ratings:
    +99 / 30 / -0
    Если так посмотреть все логично только надо подумать. Нужно тебе сделать обычный .gif или переделать тот что уже есть в стандартных файлов dle images. Через прогу разделить на фрэймы или куски , потом каждый цвет в .png из этого гифа. Потом идешь в fullstory.tpl или shortstory.tpl там где у тебя рэйтинг пропишешь свои параметры аля (7.9 - 8.3- и.т.д). В стилях меняешь пути у .png и вуяля!!o_O Будет у тебя и зеленый и красный и коричневый :)
     
  3. Shn

    Shn Зелёный

    Joined:
    Aug 22, 2018
    Messages:
    16
    Best Answers:
    0
    Ratings:
    +5 / 3 / -0
    Как-то слишком замудренно, вариант с разным названием класса по типу star-1, star-2 и тд и забитый для них css был бы проще
     
  4. synlivcho

    PRO Users

    Joined:
    Oct 24, 2018
    Messages:
    749
    Best Answers:
    2
    Ratings:
    +99 / 30 / -0
    Если у тебя стандартный .gif ты не сможешь поменять цвета через css. Человек хочет другие цвета из тех что у него есть. Зайди на свой шаблон и рейтинге у себя , через замену классов , делай твой звездочки (которые желтые) поменяй на зеленые, синие и т.д В css в основном прописано путь у .png ? если только твой рейтинг не прописан только css , там ты тогда можешь менять что угодно, так же с заменами классами. Либо тебе надо знать очень хорошо свой css и избежать все это и прописать себе точный класс для css. Точней прописать свой стиль для определенного класса. Я написал как для новичков, самое просто что можно сделать , методом , тыка или заменой надо делать если не понимаешь!
     
    #4 synlivcho, Nov 11, 2018
    Last edited: Nov 11, 2018
  5. Rik

    Rik
    Staff Member VIP Кинотрафик v2

    Joined:
    May 13, 2016
    Messages:
    720
    Best Answers:
    0
    Ratings:
    +357 / 22 / -0
    Значение рейтинга в класс добавь, например так:
    class="rating-<?= $value ?>"

    Потом просто пропиши цвета в css:
    .rating-1,
    .rating-2,
    .rating-3{
    color: red;
    }

    .rating-4,
    .rating-5{
    color: gray;
    }

    ну и так далее.
     
  6. Ботяра

    Забанен

    Joined:
    Oct 10, 2015
    Messages:
    0
    Best Answers:
    54
    Ratings:
    +711 / 74 / -0
    тема перемещена в свободное общение, поскольку не указано на какой CMS это нужно делать, чтобы определить верный раздел DLE WP или что-то другое...
     
  7. kinoliux

    kinoliux Бывалый

    Joined:
    Mar 26, 2016
    Messages:
    323
    Best Answers:
    1
    Ratings:
    +68 / 1 / -0
    Ты так имел ввиду?
     

    Attached Files:

  8. TopicStarter Overlay
    sergid

    Забанен

    Joined:
    May 18, 2017
    Messages:
    157
    Best Answers:
    0
    Ratings:
    +12 / 23 / -0
    Всем спасибо вопрос решен. Если кому нужно кину решение. Пишите.
     
  9. valekand

    valekand Новичок

    Joined:
    Apr 3, 2018
    Messages:
    34
    Best Answers:
    0
    Ratings:
    +0 / 0 / -0
    Решением поделишься? Писал в личные сообщения, но ты не читаешь ;/
     
  10. redissx

    redissx Бывалый

    Joined:
    Sep 23, 2015
    Messages:
    892
    Best Answers:
    8
    Ratings:
    +1,078 / 176 / -0
    Code:
    <div class="movie-rating">7.3</div>
    в js файл
    Code:
    
    $(document).ready(function(){
        $(".movie-rating").each(function() {
            var a = parseFloat($(this).text(), 10).toFixed(0);
            $(this).addClass('rating-'+a)
        });
    });
    
    в css
    Code:
    .rating-1 {color: red;}
    .rating-7, .rating-8 {color: green;}
    .rating-9, .rating-10 {color: yellow;}
     
    • Нравится Нравится x 4
  11. TopicStarter Overlay
    sergid

    Забанен

    Joined:
    May 18, 2017
    Messages:
    157
    Best Answers:
    0
    Ratings:
    +12 / 23 / -0
    У меня чуть другое решение, ну думаю это пойдёт. Мои правки затрагивают движок. Вот куда дел уже не помню, искать нужно.
     
  12. TopicStarter Overlay
    sergid

    Забанен

    Joined:
    May 18, 2017
    Messages:
    157
    Best Answers:
    0
    Ratings:
    +12 / 23 / -0
    открываем: show.custom.php

    Находим:
    Code:
    $tpl->set( '{short-story}', $row['short_story'] );
    После него вставляем:

    Code:
    $rating_color = "";
    if($xfieldsdata['rating'] < 3){
    $rating_color = " style=\"background-color:red;\"";
    } else if($xfieldsdata['rating'] > 3 and $xfieldsdata['rating'] < 5){
    $rating_color = " style=\"background-color:gray;\"";
    } else if($xfieldsdata['rating'] > 5 and $xfieldsdata['rating'] < 9){
    $rating_color = " style=\"background-color:green;\"";
    }
    $tpl->set( '{rating-color}', $rating_color );
    теперь show.short.php

    Находим два раза:
    Code:
    $tpl->set( '{short-story}', $row['short_story'] );
    После первого вставляем код который указанный выше:

    Рейтинг будет выглядеть как ниже. Цвет будет менять фона, в нашем случаи стили для него указал.

    Code:
    .full-tools {
    font-weight: 700;
    position: absolute;
    right: auto;
    left: 10px;
    top: 11px;
    font-size: 10px;
    z-index: 100;
    padding: 1px 7px;
    background-size: cover;
    border-radius: 1px;
    font-family: "Graphik Kinopoisk LC Web",Arial,sans-serif;
    font-size: 12px;
    }

    Code:
    [xfgiven_rating]
    <div class="full-tools" alt="Рейтинг кинопоиска"{rating-color}>
    [xfvalue_rating]
    </div>
    [/xfgiven_rating]
     
Яндекс.Метрика