const count = (lists, itemClass, startIndex) => {
[...lists].forEach(list => {
[...list.querySelectorAll(`.${itemClass}`)].forEach((li, index) => {
li.innerHTML = `<span>${index + startIndex}</span> ${li.innerHTML}`;
});
});
};
count(document.querySelectorAll(".accent-list-number"), "number", 1);
Array.prototype.forEach.call(document.querySelectorAll(".firststyle"), item => item.style.display = "block");
// Использование одного и того же id для более чем одного элемента не есть хорошо.
const foo = (str, arr, cb) => str + arr.map(item => cb(item)).join(" ");
const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1);
console.log(foo("New value: ", ["apple", "orange", "pear"], capitalize)); // New value: Apple Orange Pear
const foo = (str, arr, cb) => str + arr.map(item => cb(item, 1)).join(" ");
const substring = (str, start) => str.slice(start); // Получение строки с start (в частности со второго) символа
console.log(foo("New value: ", ["apple", "orange", "pear"], substring)); // New value: pple range ear
const foo = (str, arr, cb) => str + arr.map(item => cb.call(item, 1)).join(" ");
console.log(foo("New value: ", ["apple", "orange", "pear"], String.prototype.slice)); // New value: pple range ear
const foo = (str, arr) => str + arr.map(item => item.slice(1)).join(" ");
Article.count++; // Значение count будет одно для всех объектов созданных на основе Article, т.к как будет являться статическим и будет храниться в структуре самой функции конструкторе.
Article.result = this.created // Значение created будет оригинальным для каждого объекта созданного на основе Article, так как будет храниться в структуре самого объекта.
this.count++; // При таком раскладе count уже будет не статическим состоянием. Как и свойство created, будет находиться у каждого созданного объекта. При создание объектов, count не будет накапливаться, а будет всегда равен %начальное значение count% + 1.
this.result = this.created
Array.ptototype.forEach.call(document.querySelectorAll(`.header ul li`), item => {
item.addEventListener(`click`, event => {
item.classList.toggle(`onactive`);
}, false);
});
Array.ptototype.forEach.call(document.querySelectorAll(`.header ul li`), item => {
item.addEventListener(`click`, event => {
if (item.classList.contains(`onactive`)) {
item.classList.remove(`onactive`);
} else {
item.classList.add(`onactive`);
}
}, false);
});
var elements = document.querySelectorAll(".header ul li"); // Собираем коллекцию элементов
for (var i = 0; i < elements.length; i++) { // Перебираем в цикле каждый элемент коллекции
elements[i].addEventListener("click", function() {
if (this.classList.contains("onactive")) { // Если {{ при клике }} элемент содержит класс
this.classList.remove("onactive"); // То удаляем этот класс
} else { // Иначе
this.classList.add("onactive"); // Добавляем класс
}
}, false);
}
// Конкретно под ваш пример, лучше будет такая реализация.
var elements = document.querySelectorAll(".header ul li"); // Собираем коллекцию элементов
var selected = elements[0]; // Сохраняем выделенный элемент
for (var i = 0; i < elements.length; i++) { // Перебираем в цикле каждый элемент коллекции
elements[i].addEventListener("click", function() {
if (selected) { // Если есть выделенный элемент
selected.classList.remove("onactive"); // То убираем у него выделение
}
selected = this; // Сохраняем текущий элемент на котором произошло событие
this.classList.add("onactive"); // Добавляем выделение текущему элементу
}, false);
}