kép középreigazítás javascript

Sziasztok,
Szeretnék segítséget kérni, nem értem, hogy miért nem megy a szkriptem. Szeretném ha a képek középre igazodnának a diven belül, ami alapvetően még menne is, de a jelen esetben egyszerűen nem értem, hogy miért undefined minden amit visszaadok az Igazit.getDiv-ben. Pedig, ha közvetve is, de akkor hívom meg amikor kész van már a dokumentum. Minden egyéb tippet és kritikát is szívesen veszek, köszi.

http://marciunix.extra.hu/galeria.html

Hozzászólások

buta kérdés, de cssben nem jó?

#pic {text-align: center;}

csak gyakorlásképp, valami egyszerűbb dolgot akartam átírni komolyabb formába. http://www.dustindiaz.com/namespace-your-javascript/
ezt az oldalt követtem, meg átolvastam nagyjából az object oriented javascript by stoyan stefanov c. könyvet. úgy érzem hogy abba a problémába ami ennél a szkriptnél merült fel a jövőben is bele fogok futni ezért szeretnék rájönni hogy mit kéne vele csinálni hogy működjön.

azóta meg is csináltam css segítségével, köszi. viszont amit nem értek, az az, hogy a http://marciunix.extra.hu/galeria.js 47. sorától kezdve definiált változókat miért nem kapom vissza rendesen, miért undefined? lehet, hogy kézzelfekvő a válasz, de egyszerűen szúrja ki a hiba a szememet.
egy változóba berakok egy document.getElementById-t, onnantól meg különböző értékeit veszem, de nem ad vissza az egész semmit, pedig a legfelső domready funkciómban hívom meg. hibát nem ír, egyszerűen undefined.

A CSS text-align muxik FF alatt, de mintha lenne olyan bongeszo amivel nem menne (gondolom IE valahany). Raadasul ez csak egyik iranybol teszi be kozepre, de a kep ugyanugy a keret felso reszen marad. Erre az esetre az alabbi linken van leiras:

http://webdesign.about.com/od/beginningcss/a/aa012207.htm
Centering Images
Vertically Centering Images and Blocks

Hivatalosan a CCS2 nem tamogatja kepek fuggoleges kozepre igazitasat, ezert nem is garantalt a mukodese minden browserban. Sztem az ilyet legbiztosabban ugy lehet elvegezni, hogy JS-ben lekered a keret es a kep meretet, kiszamolod hol van kozepen, es beallitod fixre a kep kezdokoordinatait.

A szkriptedbol a getDiv fuggvenyen belulrol ki kell szedned a "var" kulcsszot a valtozoid elol, ahogy elottem is irtak. Az a gond vele, hogy a getDiv-en belul hasznalva ezzel fuggvenyen beluli valtozokat definialsz, amik elfedik az ugyanolyan nevu globalis valtozoidat. A fuggvenyen beluli valtozoknak adsz igy erteket, amik a getDiv vegen meg is szunnek.

A 61. sor mit vizsgal?
"if (document.getElementById)"

a teljes kozepre rendezes is megoldhato minden bongeszoben, css-el - igaz fix kep es keret meret kell hozza:

html:
<div id="keret"><img src="valami.jpg" alt="valami" /></div>

css:

#keret {
width: 800px;
height: 600px;
position: relative
}

#keret img {
width: 300px;
height: 300px;
position: absolute;
left: 50%;
top: 50%;
margin-top: -150px; /* kep magassaganak a fele */
margin-left: -150px /* kep szelessegenek a fele */
}

--
x-plane :: hu | x-economy | Antonov An-2 cockpit

kösz mindenkinek, elég alapvető dolgot nem értettem, de jó hogy most már rendben van.
egyébként http://www.jakpsatweb.cz/css/css-vertical-center-solution.html itt írnak a vertikális középre igazításról, jónak tűnik, valid is a css, és nem baj, hogy különbözik a képek mérete. ies4linux-on, IE6-ban kicsit elcsúszik miatta a viszont a horizontális igazítás, de szerintem megoldható a probléma. több böngészőt még nem teszteltem, de megcsinálom majd normálisan.
felraktam a csak css-es változatot:
http://marciunix.extra.hu/galeria.html

endi123:
A 61. sor mit vizsgal?
"if (document.getElementById)"
egy ablakmérethez igazító szkriptet írtam át eredetileg, abban volt, gondolom az az értelme, hogy ha támogatja a böngésző egyáltalán a document.getElementById-t, akkor csinálja csak meg a műveletet, mert ha nem támogatja akkor hibát okozna