Wszystkie ćwiczenia wykonuj wyłącznie wpisując komendy w Konsoli Narzędzi Deweloperskich!
F12 (lub Ctrl + Shift + I) i przejdź do zakładki Console (Konsola). Wpisuj kolejne komendy i obserwuj zmiany na żywo w elementach po lewej stronie!
Wartości w polach wejściowych:
Wybór języka (name="jezyk"):
Opcje dodatkowe (name="opcje"):
| Lp. | Uczeń | Ocena |
|---|---|---|
| 1 | Jan Kowalski | 5 |
| 2 | Anna Nowak | 6 |
| 3 | Piotr Wiśniewski | 4 |
| 4 | Zofia Lewandowska | 5 |
Wpisuj w konsoli podane polecenia krok po kroku i sprawdzaj efekty na stronie!
Wpisz w konsoli kod, który pobierze wartości z pól #liczba-a i #liczba-b, zsumuje je (używając parseFloat) i wpisze wynik do elementu o id wynik-id.
let a = parseFloat(document.getElementById('liczba-a').value);
let b = parseFloat(document.getElementById('liczba-b').value);
document.getElementById('wynik-id').innerHTML = "Suma wynosi: " + (a + b);
Wpisz polecenie za pomocą querySelector, które zmieni kolor tła bloku #wynik-id na zielony (#27ae60), a kolor czcionki na biały (white).
let box = document.querySelector('#wynik-id');
box.style.backgroundColor = '#27ae60';
box.style.color = 'white';
Pobierz wszystkie elementy z klasą cena za pomocą getElementsByClassName. W pętli for zsumuj ich zawartość tekstową (parseFloat(el.textContent)) i wyświetl sumę w bloku #wynik-ceny.
let ceny = document.getElementsByClassName('cena');
let suma = 0;
for (let i = 0; i < ceny.length; i++) {
suma += parseFloat(ceny[i].textContent);
}
document.getElementById('wynik-ceny').textContent = "Łączna cena: " + suma.toFixed(2) + " zł";
Wybierz wszystkie elementy listy mające klasę wazne za pomocą querySelectorAll('#lista-zakupow li.wazne') i za pomocą metody .forEach() dodaj im klasę podswietlenie.
document.querySelectorAll('#lista-zakupow li.wazne').forEach(el => {
el.classList.toggle('podswietlenie');
});
1. Sprawdź, który radiobutton o nazwie jezyk jest zaznaczony.
2. Pobierz wszystkie zaznaczone checkboxy o nazwie opcje i wypisz ich wartości do bloku #wynik-opcje.
let jezyk = document.querySelector('input[name="jezyk"]:checked').value;
let opcje = [];
document.querySelectorAll('input[name="opcje"]:checked').forEach(cb => opcje.push(cb.value));
document.getElementById('wynik-opcje').innerHTML =
"Język: <b>" + jezyk + "</b><br>Opcje: <b>" + opcje.join(", ") + "</b>";
Pobierz wszystkie komórki tabeli z klasą ocena (#tabela-uczniow td.ocena), policz średnią arytmetyczną i wpisz ją do bloku #wynik-tabela.
let oceny = document.querySelectorAll('#tabela-uczniow td.ocena');
let sumaOcen = 0;
oceny.forEach(td => sumaOcen += parseFloat(td.textContent));
let srednia = (sumaOcen / oceny.length).toFixed(2);
document.getElementById('wynik-tabela').textContent = "Średnia ocen klasy: " + srednia;
Przycisk #btn-oblicz nie ma żadnej akcji! Wpisz w konsoli kod, który podepnie pod niego funkcję obliczającą sumę przy każdym kliknięciu myszą.
document.getElementById('btn-oblicz').addEventListener('click', function() {
let a = parseFloat(document.getElementById('liczba-a').value) || 0;
let b = parseFloat(document.getElementById('liczba-b').value) || 0;
document.getElementById('wynik-id').textContent = "Kliknięto przycisk! Suma: " + (a + b);
});
Wpisz po kolei w konsoli poniższe linijki i zobacz różnicę w podglądzie obiektów:
console.dir(document.getElementById('blok-id'));
console.log(document.getElementsByTagName('td')); // HTMLCollection
console.log(document.querySelectorAll('td')); // NodeList
console.log(document.getElementsByName('jezyk')); // NodeList