Cytat
nie kapuje nic z tego DOM`u
To nic trudnego, w wielkim skrócie to wszystkie elementy jakie masz na stronie, wszelkie divy, spany, tabelki, inputy, zwykłe teksty - generalnie wszystko to co piszesz w HTML, ale zapisane w jakieś tam specjalnej formie(,która Ciebie w ogóle nie zajmuje). Aby wykonać dowolną operację na jakimś elemencie HTML w JS, musisz najpierw znaleźć ten element, a poszukujesz go właśnie po przez DOM. Czyli jak chcesz zmienić np. tekst, jakiegoś elementu(innerHTML) to znajdujesz dany element w tzn. drzewie DOM(
http://kurs.browsehappy.pl/Definicja/DOM ) i wykonujesz na nim operacje. Problem jest w tym, że najpierw przeglądarka musi mieć załadowane to drzewo DOM, gdzieś w swoim cache-u( to proste, załadowany element w tym drzewie DOM = możesz na nim operować). Możesz to 2 sensowne sposoby:
- Szukać tego elementu, dopiero po wpisaniu div-a(czyli w kodzie najpierw masz dany element, a dopiero potem się do niego odwołujesz)
Kod
<div id="test">element do, którego chce się dostać</div>
<script>
alert( document.getElementById('test').innerHTML );
</script>
- wykorzystać odpowiednie zdarzenie, aby spr. czy DOM jest załadowany - np. onload - czyli jak drzewo DOM jest załadowane to wtedy wykonaj pewne operacje( akurat przy onload to funkcja wywoływana jest to oprócz DOM, muszą być załadowane też wszelkie inne elementy strony np. obrazki), są sposoby, aby wykonać te funkcje dopiero po załadowaniu DOM, ale na razie nie musisz ich znać.
I w sumie to wszystko. Jedyne co jeszcze musisz wiedzieć to jak dobrać się do elementów. Możesz to robić na wiele sposobów, szukając ich po id, name, class, tagu HTML funkcje getElement(s)By(Id|Name|Class|TagName) - lub poprzez inne sposoby np. następny element na stronie( patrz poprzedni link)
Dobrze wiedzieć jeszcze, że możesz zapisywać sobie referencję(takie odwołanie) do danego elementu, np:
Kod
var el = document.getElementById('test'); //zmienna el trzyma referencję do elementu o id == test
//możesz teraz stosować różne operacje na tym elemencie
el.innerHTML = '123';
el.style.color = '#123456';
Jest to bardzo dobre, gdyż nie musisz szukać elementu za każdym razem(optymalizacja) - kod jest, krótszy, często czytelniejszy.
Jeszcze napisze Ci o this (z ang. "to"), które bezpośrednio odwołuje się do używanego elementu(nie zawsze, ale to za dużo tłumaczenia ):
Kod
document.getElementById('test').onclick = function(){//przypisanie zdarzenia 'klikania'
this.innerHTML = '1234567890'; //this odwołuje się do document.getElementById('test')
}
To chyba wszystko - solidne podstawy. Jeszcze czegoś nie rozumiem to pisz(mam fazę pisania dłuższych opisów, zamiast odsyłać do tutków, więc możesz to wykorzystać

)