Я хотел бы извлечь шестнадцатеричные цвета из строки и создать цветной HTML-код. Пример: у меня есть эта строка:

#ff0000He#ffccccllo

Это преобразовало бы это в

<span style="color:#ff0000">He</span><span style="color:#ffcccc">llo</span>

-1
emilevirus 14 Дек 2015 в 17:58

3 ответа

Лучший ответ

Это поможет:

var input = '#ff0000He#ffccccllo'.split('#');
var output = '';
input.filter(function (str) {
  return !!str;
}).forEach(function (str) {
  output += '<span style="#' + str.slice(0, 6) + '">' + str.slice(6) + '</span>';
})
console.log(output) // --> <span style="...

Или как функция:

function convert(input) {
   input = input.split('#');
   var output = '';
   input.filter(function (str) {
     return !!str;
   }).forEach(function (str) {
     output += '<span style="#' + str.slice(0, 6) + '">' + str.slice(6) + '</span>';
   })
   return output;
}

ОБНОВЛЕНИЕ: исправлена ошибка в функции dfn. Работает сейчас.

0
jeff_mcmahan 14 Дек 2015 в 15:28