⊗jsPmPrASA 485 of 505 menu

JavaScript-ով ակտիվացման ոճերի հերթափոխ

Նախորդ դասում մենք սովորեցինք ակտիվացնել բջիջները՝ դրանց վրա կտտացնելով: Եկեք հիմա անենք, որ տեղի ունենա գույների հերթափոխ. թող առաջին բջիջը ներկվի կարմիր, երկրորդը - կանաչ, երրորդը - նորից կարմիր և այսպես շարունակ:

Այս խնդիրը լուծելու համար մեզ արդեն անհրաժեշտ կլինի երկու CSS դաս.

.color1 { background: red; } .color2 { background: green; }

Իրականացնենք նկարագրված հերթափոխը.

let tds = document.querySelectorAll('#table td'); let color = 'color1'; for (let td of tds) { td.addEventListener('click', function() { if (color == 'color1') { color = 'color2' } else { color = 'color1' } this.classList.add(color); }); }

Վերլուծեք իմ կոդը, ապա ինքնուրույն կրկնեք այս խնդրի լուծումը:

Բազմաթիվ գույների հերթափոխ զանգվածից

Թող հիմա մենք ուզենք հերթափոխել ոչ թե երկու գույն, այլ կամայական քանակությամբ: Դրա համար եկեք պահենք CSS դասերի զանգված.

let colors = ['color1', 'color2', 'color3'];

Գրենք մեր դասերի գույները.

.color1 { background: red; } .color2 { background: green; } .color3 { background: yellow; }

Իսկ հիմա իրականացնենք հերթափոխը.

let tds = document.querySelectorAll('#table td'); let i = 0; let colors = ['color1', 'color2', 'color3']; for (let td of tds) { td.addEventListener('click', function() { this.classList.add(colors[i]); i++; if (i == colors.length) { i = 0; } }); }

Պատմեք, թե ինչպես է աշխատում իմ բերված կոդը:

kapluzituzc