ugrás a tartalomhoz

LightZAP

Dragonzap · 2013. Aug. 30. (P), 11.33
Lightbox egy tuningolt változata
http://dragonzap.szunyi.com/index.php?e=page&c=projects&al=lightzap&l=hu

Amiket tud:
-Autómatikus képátméretzés
-Teljes képernyő mód
-Érintóképernyőkre optimalizálva
-Egyszerű témafájl kezelés
-Részletek funkció
-HTML5 szabvány
-Szerző és link funkció
-Nyomtatás
-Letöltés
-Megosztás facebookon
-Töröt link esetén "A kép nem található" funkció
-Körkörös léptetés mód

Remélem valaki hasznát vesz. Ha bármi észrevétel, igény vagy panasz van nyugottan írjatok itt vagy a dragonzap.misi##kukac##gmail.com -on;
 
1

Title?

Pepita · 2013. Szep. 3. (K), 21.43
A gombok miért nem "mondják meg", hogy kicsodák? Azért, mert "Érintóképernyőkre optimalizálva"?
7

Jó ötlet

Dragonzap · 2013. Szep. 11. (Sze), 19.55
Igazad van, ezt el is felejtettem, újba javítva lesz (http://dragonzap.szunyi.com/downloads/Debug.html van).
2

Észrevételek

bamegakapa · 2013. Szep. 3. (K), 22.51
Ha szabad pár kritikát, hiszen gondolom ezért (is) osztottad meg velünk. Megjegyzem, csak nagyon felületesen néztem át a kódot.

  • Szemeteli a globális névteret, ráadásul elég lelkesen.
  • A window.onload, document.onkeyup és window.onresize eseménykezelőket, de semmilyen más eseménykezelőt sem illik így lefoglalni. Már igen régóta az addEventListener a javasolt módszer.
  • Csak minified verzió tölthető le, így megnehezítve a forrás átvizsgálását (sokan nem raknak be csak úgy egy bármilyen plugint az oldalukra). Érdekes módon a promóoldal forrásában viszont találtam egy nem minified verziót, azt olvasgattam. Pedig pont, hogy oda kéne a minified, nem?
  • Ha komolyan gondolod, nem ártana neki egy github repó.
  • Kéne egy kipróbálható demó a promóoldalra - ha van, csak én nem találtam, az is baj.
  • A getElementsByClassName függvényed nem ugyanazt csinálja IE8-ban, mint más böngészőkben (az első element paramétert nem veszi figyelembe a querySelectorAll verzió!), ebből lehetnek komoly gebaszok. IE7-ben értelemszerűen nem fog működni, mert ott se getElementsByClassname, se querySelectorAll, ami még nem tragédia, viszont a promóoldalon nem láttam kiírva, milyen böngészőket támogatsz.
  • Egyébként mindez felesleges volt csak az IE8-ért, mert a getComputedStyle-t az úgyse támogatja, amit viszont használsz máshol.
  • Felesleges, kesselhető DOM-lekérések (egyben a kód olvashatóságát is megdobná), pl.:
        if (getElementsByClassName($container, "lz-desc")[0].style.display == 'none')
            getElementsByClassName($container, "lz-desc")[0].style.display = '';
        else 
            getElementsByClassName($container, "lz-desc")[0].style.display = 'none';
    
  • Sok helyen következetlen kódolási stílus és változóelnevezési konvenciók, == preferálása === helyett, illetve fölöslegesen bőbeszédű, nehezen olvasható kód, satöbbi, de ezekkel ráérsz a többi után foglalkozni.


A kritikát kizárólag épülésedre szánom. Ha az említett fogalmaknak és technikáknak utánaolvasol és beépíted őket az eszköztáradba, jobb leszel abban, amit csinálsz. Nem azért nem írtam pozitívumokat egyébként, mert nincsenek.

Ha szeretnéd egy kicsit jobban elsajátítani a nyelvet, érdemes megszerezni Douglas Crockford Javascript: The Good Parts könyvét, rajtam sokat dobott.
6

Köszönöm

Dragonzap · 2013. Szep. 11. (Sze), 19.54
Köszi, hogy megnézted és ennyi észrevételt, tanácsot írtál. Igyekeztem megfogadni a tanácsaid, de még van pár dolog ami után kell hogy nézzek.

http://dragonzap.szunyi.com/downloads/Debug.html

Itt van egy kipróbálható javított verzió, ha esetleg van ezzel, vagy az elözővel még bármiféle észrevétel, szivesen várom :).
3

Ja és még valami

bamegakapa · 2013. Szep. 3. (K), 22.57
Megkérdezhetem, miért döntöttetek a jQuery-gyomlálás mellett? Pedig arra pont jó, amivel látszólag a kódnak komoly bajai vannak: DOM-kezelés, eseménykezelés, böngészőfüggetlenség.

Ha a méret a gond, ott a kiváló Zepto - 10k a minified verzió gzippel, annyit pedig simán leszedne a kódból, ha nem többet. Ráadásul megbízhatóan is működne.
4

IE

Poetro · 2013. Szep. 4. (Sze), 08.10
Csak éppen IE-t nem kezel. Akkor már inkább Qwery és Bean, vagy ha más DOM cucc is kell, akkor akár mehet az egész Ender.js-ben található Jeesh.
5

Jogos, azt benéztem :).

bamegakapa · 2013. Szep. 4. (Sze), 10.06
Jogos, azt benéztem :).