Если вы хотите сохранить цвет фона с элементом, вам нужно будет сохранить элемент как объект, а не просто имя.
Я рекомендую добавить logi c, например, так: Ваш метод добавления:
function add() {
var task = document.getElementById('task').value;
var todos = get_todos();
var newTask = {
name:task,
id: "item" + todos.length,
priority: {
isPriority:false,
color:""
}
};
todos.push(newTask);
localStorage.setItem('todo', JSON.stringify(todos));
show();
return false;
}
Тогда, когда вы покажете (), ваш l oop будет выглядеть так:
for (var i = 0; i < todos.length; i++) {
var todo = todos[i];
html += "<p id='item" + i + "' isPriority='" +
todo.priority.isPriority + "'>" + todo["name"] + '<p>' +
"<button class='remove'>Delete</button>" + " " +
"<button class='priority' value='item" + i + "'>Priority</button>";
};
Затем, когда вы установите приоритет для объекта вы просто устанавливаете
todos[i].priority.isPriority = true;
и
todos[i].priority.color = "red";
Если вы хотите определить свой цвет на основе свойства, вы можете просто установить свойство в html как isPriority = true и затем в css сделайте это:
[isPriority="true"] {
background-color: red;
}