Раскрашиватель

Раскрашивает сообщения разных пользователей в общем чате в слегка разные цвета
Пользоваться на свой страх и риск!


По просьбам трудящихся: открываете консоль браузера (F12 или гуглить), и копипастите туда код ниже


function idToColor(id) {
  return 'hsl(' + (200 + ((id & 31) << 2)) + ', 100%, 94%)';
}
var newSheet = document.styleSheets.item(document.styleSheets.length - 1);
function addColor(stylesheet, id) {
  newSheet.insertRule('#messages tr[id$="-' + id + '"] .mess { background-color: ' + idToColor(id) + ' }');
}
var rules = {};

function addFor(selector) {
  var nodes = document.querySelectorAll(selector);
  for (var idx in nodes) {
    try {
      var node = nodes[idx];
      var id = node.id.split('-') [1];
      if (rules[id]) continue;
      rules[id] = true;
      addColor(newSheet, id);
    } catch (e) {
    }
  }
}

addFor('#messages tr.in');

// да, это некрасивая инъекция!
var add_message_old = add_message;
add_message = function (a, b, c) {
  add_message_old(a, b, c);
  if (a === 'in') {
    addFor('#messages tr.in:last-of-type');
  }
}

nektome.blog https://nektome.blog/ +7 (927) 2893774
| | Комментариев: 4
    Новых комментариев: 0
  1. 0
    Найт: не доделывал, кажется
    сейчас по последней цифре айди цвета даются
    Найт: Но очень похожие, мне мой вариант всё ещё больше нравится
    #
    Написал Еван Якидович
  2. 0
    так оно и так есть. или Дмитрий доделал после поста?
    Найт: не доделывал, кажется
    #
    Написал Еван Якидович
  3. +1
    Радужный мир^^
    #
    Написал lilXutsidЗr
  4. 0
    И что будет?
    Найт: Сообщения одного пользователя в общем чате станут одного цвета, разных — разных. Вариантов 32, так что повторы возможны.
    #
    Написал аноним