Если нужно было взять готовую строку со страницы и задать ей случайный цвет для каждой буквы, а не целиком для строки - этого кавалеристким наскоком сделать не получилось... Как это можно сделать?
Задача выходила тут дважды, более ранний вариант: "Нужно сделать ввод с клавиатуры и чтобы каждая буква вводилась разными цветами. Сказали можно просто присвоить каждой букве свой цвет, но я не знаю как сделать."
и мне думается, что это более гармоничное задание, когда каждая буква имеет свой цвет, а не получает его рандомно...
Тут еще зависит от того, откуда исходная строка берется, если она берется с input, то просто при событии oninput можно брать один последний символ, давать ему цвет и плюсовать в абзац, например element.insertAdjacentHTML("beforeend", "тут HTML"). Если будет переменная с готовым текстом, то тут немного по другому.
Насчет каждой букве свой цвет. Массив букв (или просто строку из букв) и массив цветов (можно взять текстовые названия цветов). Находим индекс буквы в массиве, и плюсуем букву с цветом из массива по этуому индексу.
Интересная задачка в принципе)) Надо попробовать.
P.S. - об insertAdjacentHTML только сейчас узнал)), решил просто поискать, можно ли как то обойтись без полной замены содержимого, как в случае innerHTML, и без createElement.
Еще маленкий лайвхак, как быстро наюзать 164 цвета для массива. Переходим сюда - , вставляем код: let q = document.querySelectorAll('td.dt'); let col = ''; for (let i = 0; i < q.length; i++) { col += "'"+q[i].outerText+"',"; } и получаем список)). Можно ограничиться 32-мя
"Переходим сюда" забыл - https ://colorscheme.ru/html-colors.html. Такой вот код получился. Много чего стоит проверять на момент ввода, типа пробела, удаление символа и т.п. Но в целом принцип работы такой вот. Молот красавчик)) забавно получилось
Как это можно сделать?