Wpis z mikrobloga

@Underwear: Mam mały problem. Chciałem dodać do strony www odliczanie w górę. Potrzebuje 4 sztuki z podpisami. Niestety, po wklejeniu kodu do kolejnego kontenera, drugie odliczanie nie startuje.

Kod wygląda tak:

var counter = 0
var timer;
function countUP () {
counter = counter + 1;//increment the counter by 1
//display the new value in the div
document.getElementById("timer_container").innerHTML = counter;
}

0

#webdev #frontend #informatyka #webdesign
  • 6
@Underwear: każdy div musi mieć inne id, np.

0
0
itp. Potem w document.getElementById() podajesz odpowiednie ID. No i jeśli wszystkie countery będą mogły mieć inne wartości, to potrzebujesz też 4 osobnych zmiennych counter.

@Underwear: jeśli chcesz modyfikować wszystkie divy jednocześnie o tą samą wartość to możesz też zamiast id użyć class i .querySelector(".timecontainer").forEach(...).

+ Poczytaj o "single responsibility principle" i spróbuj rozbić twoją funkcję countUp na dwie różne. W tej chwili jedna funkcja liczy i modyfikuje elementy.

+ wartość count powinna być przekazywana jako argument po to, żeby funkcja nie generowała tzw. side effectów - w tym przypadku modyfikowania zmiennej globalnej