Есть простой код, который должен преобразовать строку в массив символов, потом сравнить каждую букву с массив "letters" если нашлось совпадение, то создать div с фоном соответствующим и все.
Но вот что-то не работает он.
var colors = ["#1abc9c", "#2ecc71", "#3498db", "#9b59b6", "#34495e", "#f1c40f", "#e67e22", "#e74c3c"];
var letters = ["a", "b", "c", "d", "e", "1", "2", "3"];
function action() {
var message = document.getElementById("sinput").value;
var b = new Array(message.length);
for (var i = 0; i < message.length; i++) {
b[i] = message.charAt(i);
}
for (var i = 0; i < b.length; i++) {
if(b[i] == "a") {
var div = document.createElement("div");
div.style.backgroundColor = colors[0];
}
if(b[i] == "b") {
var div = document.createElement("div");
div.style.backgroundColor = colors[1];
}
if(b[i] == "c") {
var div = document.createElement("div");
div.style.backgroundColor = colors[2];
}
if(b[i] == "d") {
var div = document.createElement("div");
div.style.backgroundColor = colors[3];
}
if(b[i] == "e") {
var div = document.createElement("div");
div.style.backgroundColor = colors[4];
}
if(b[i] == "1") {
var div = document.createElement("div");
div.style.backgroundColor = colors[5];
}
if(b[i] == "2") {
var div = document.createElement("div");
div.style.backgroundColor = colors[6];
}
if(b[i] == "3") {
var div = document.createElement("div");
div.style.backgroundColor = colors[7];
}
}
}