ugrás a tartalomhoz

A DOM az új CSS - avagy diszkrét JavaScript

Hojtsy Gábor · 2004. Aug. 16. (H), 08.23
A JavaScript egy óriási találmány, nálunk is több hír és blogmark megjelent már, melyek innovatív felhasználásait mutatták be. Mégis az vele a probléma, hogy egy időben nagyon rossz irányba indult el a felhasználása: állapot sorban görgő szövegekhez, jobbgombos kattintás letiltására, és mindenféle más idegesítő célra alkalmazták. Ha azonban a helyére tesszük a technológiát és segítségül hívjuk a DOM technolgóiát, akkor minden jóra fordítható.

Hiába akarjuk jó célra használni a JavaScriptet, ha nem jól építjük webodalunkba. A diszkrét JavaScript (unobtrusive JavaScript) módszertan kiemel minden JavaScript kódot a HTML forrásból, és a böngészők által a dokumentumból felépített objektum modellt (DOM) használja arra, hogy a megfelelő eseménykezelőket felvegye, dinamikus funkciókkal gazdagítva az oldalt. Ilyenkor csak egy (vagy több) külső kódot betöltő <script> elem marad a kódban, és semmilyen más JavaScript nem kap helyet.

A HTML elemek különböző tulajdonságainak eléréséhez a korábbi böngészők más-más módszereket biztosítottak, és ezekből nőtt ki végül a DOM. Azért mondhatjuk, hogy a DOM az új CSS, mert még eléggé kevesen ismerték fel, hogy a viselkedési réteg leválasztásával ugyanolyan hasznos segítőnk, mint a CSS a megjelenítési réteget tekintve. Ezért szinte ugyanolyan mellőzött technológia, mint a CSS volt korábban.

Jeremy Keith This Year's Document Object Model című írásában a kezdetektől vezeti végig az olvasót a böngészők négyes szériájának viselkedésétől, a JavaScript kódok kiemelésének módozatain át végül olyan példákig melyek nagyon kellemesen szemléltetik a diszkrét JavaScript előnyeit.
 
1

régóta...

bbalint · 2004. Aug. 16. (H), 09.58
a magam részéről már régóta nem írok a HTML elemekhez onclick meg mindenféle ilyen attribútumokat, hanem azokat a window.onload függvénybe írt kóddal teszem meg... persze, ez sem olyan szabályos, hiszen inkább halgatózni (listen) kéne a bizonyos rá, mert úgy a szeb és job, vagy nem?

szerintem sem való a javascript kód (meg a css sem) a html-be, inkább külső állományokba lapítsanak azok is...
2

Fejlesztes

sajt · 2004. Aug. 16. (H), 11.06
Azert fejlesztes kozben azt tanacsoljak, hogy ezek legyenek benne a html forrasban, es csak kesobb vegyuk ki oket, a chache-eles miatt.
4

miért?

bbalint · 2004. Aug. 16. (H), 18.12
(szvsz) a böngészők, meg a webszerverek jól tunnak egymással kommunikálni. a böngészők, szoktak If-Modified-Since fejléceket/lekéréseket küldeni a cachélt tartalom "ellenőrzésére". és a webszerverek is ilyenkor jól megnézik a filét, hogy változott-é s megfelelő tájékoztatást is adnak az állapotokról...
szóval, miért kéne beírnom a HTML tag-ek közé, majd onnan kiszedegetni "a végén"?

bbalint
7

dinamikus tartalom

Hodicska Gergely · 2004. Aug. 17. (K), 14.20
Peldaul egy cikkeket megjelnito oldalnal minden egyes cikkidnak megfeleloen mas tartalmat kell kiszolgalnod, tehat ha az oldalon belul lenne a JS kod, akkor mindig ujra letoltodne, de ha kulon fileban van, akkor mar lehet cachelni, es csak a tenylegesen valtozo tartalom toltodik ujra.

Felho
3

kinek mi új?

Hojtsy Gábor · 2004. Aug. 16. (H), 11.07
Az, hogy kinek mi új, az ugye tapasztalattal és előképzettséggel változik, ez indokolja a megfogalmazást. Különben teljesen igazad van :) Az onload szerintem tökéletesen megfelel. Ha a HTML-en kívül tartod a 'viselkedési réteget', akkor ha egyszer úgy döntesz, hogy nem jó az onload, akkor tudsz másra váltani könnyen.
5

JS segédlet?

Anonymous · 2004. Aug. 17. (K), 14.06
Apropos JS!

Tudtok valahol (majdnem teljesen) kezdőknek szóló (onnan induló), ámde aktuális JavaScript tananyagot? (Esetleg magyarul.)

Köszönöm!

HT
6

Válasz itt

Hojtsy Gábor · 2004. Aug. 17. (K), 14.19
http://weblabor.hu/forumok/temak/3263
9

Kösz!

Anonymous · 2004. Aug. 19. (Cs), 07.56
Nem túl bíztató...
8

JS lecke

Jano · 2004. Aug. 18. (Sze), 09.42
JS-ben vagy új vagy progrmozás is teljesen ismeretlen.

JS nagyon hasonló C szintakszishoz csak sokkal lazább egy-ket dolgban. Ezután meg kell érteni mi az a dokumentum fa, hogyan tudod építeni, alakítani. Ezekután mar csak annyit kell tudni, hogy objektum stiluslapjat hogyan éred el és tiéd a pálya!
10

A programozás is

Anonymous · 2004. Aug. 19. (Cs), 07.58
Csak HTML és CSS ismereteim vannak. (no, azért felismerek egy JS kódot, de ez asszem vajmi kevés...) :o(
11

JS referencia

attlad · 2004. Aug. 19. (Cs), 15.10
http://htmlinfo.polyhistor.hu/js13ref/contents.htm