Hirdetés
- gban: Ingyen kellene, de tegnapra
- Toomy: FOXPOST: régen jó volt, de már jobban jársz, ha elfelejted
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- urandom0: Mégsem számőzöm az AI-t az életemből :(
- Brogyi: CTEK akkumulátor töltő és másolatai
- hcl: Google Billingclient 8.x Android példaprogram
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
-
LOGOUT
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
"A jelenlegi tanárommal erről beszélgettem, szó volt a local/sessionStorage lehetőségéről is. Azt mondta, hogy elsősorban ezek a módszerek az IE-nél nem alkalmazhatóak, ezért jobb módszer lehet a cookies az adatok tárolására."
Hát a tanárod akkor kissé le van maradva, vagy megmaradt az IE6/7-re fejlesztős korszakban (asszem 2015-ben ezt nyugodtan meghagyhatjuk egészen speciális (pl. vállalati) területek "kiváltságainak"), mert ahogy martonx már leírta, még az IE8 is támogatja a localStorage/sessionStorage használatát:
http://caniuse.com/#search=localStorage
http://caniuse.com/#search=sessionStorageSzóval hogy most cookie-t, localStorage/sessionStorage-ot használsz, azt ne támogatottság alapján döntsd el (hacsak nem akarsz még őskövület böngészőkre is fejleszteni), hanem az alapján, hogy melyikre van szükséged.
Pár gondolat:
- felesleges egyesével minden gombot külön-külön beregisztrálni egy eseménykezelőhöz id szerint, értelmesebb lenne valami általánosabb struktúrába szervezni, pl. hozzájuk rendelni egy osztályt, és pl. .querySelectorAll használatával kigyűjteni őket, végigmenni a listán, és hozzájuk csapni az eseménykezelőt (az elemen kiváltódó adott eseményre feliratkozni).
- az előzőhöz kapcsolódóan próbálj általánosabban gondolkodni, nem mindenhez bedrótozni az id-t, és aszerint végezni vele valamit (nyilván esetfüggő, lehet olyan elem, hogy csak és kizárólag ahhoz akarsz valamilyen viselkedést rendelni), mert ez nehézkessé teszi a kódodat, nehezebben tudsz azonos viselkedésű elemeket lazán hozzáadni a HTML-kódhoz anélkül, hogy a JavaScript-kódot módosítanod kéne
- JavaScript-kódba nem írunk CSS-kódot! Tehát a stílust nem szabad JavaScriptből definiálni, hogy ilyen kerete legyen, olyan színe, stb., hanem erre szépen létre kell hozni egy CSS-osztályt, és magát az adott class-t az elemhez hozzáadni vagy épp levenni róla szükség szerint. Pl.:
http://stackoverflow.com/questions/2155737/remove-css-class-from-element-with-javascript-no-jquery/18492076#18492076
- most nem nagyon van időm leírni a hogyanját, de a kosárba pakolt elemeket tárolhatod egy változóban, úgy, hogy csak azok a függvények érjék el, akiknek szabad is, hogy hozzáférése legyen, tehát legyen egy kosárba hozzáadós, eltávolítós, adatfrissítős függvényed (meg ami még kellhet) - hogy hogyan rejtsd adott scope-ba, az nem feltétlenül kezdő feladat, de addig is megoldhatod sima globális változóval (de tudnod kell, hogy ez veszélyes módszer, mivel bárki hozzáférhet)
- lehetőség szerint kerüld el az ismétlődő metódushívásokat, értem ezalatt azt is, hogy a natív metódusokat hívogatod újból és újból adott kódban, mert egyrészt csak csúnya code bloat, másrészt plusz időt vesz igénybe ezek újbóli végrehajtása (még ha nem is dob észrevehetően a kód futási idején egy document.getElementById újbóli hívogatása - pl. az eseménykezelődben kétszer is szerepel a document.getElementById("zahlungsMethod"), pedig ezt elég lett volna egyszer leírnod, és eltárolni egy változóban, ez persze csak egy példa); szóval azt, amire később úgyis szükséged lesz újból, tárold el egy változóban"»» A kosárba pakolás során egy jó UI esetén nem frissül újra az egész oldal, mert tök felesleges.
Ezt nem teljesen értem, ezt "kódügyileg" hogyan képzeljem el?"
Úgy, hogy nem megakadályozod az alapértelmezett viselkedését az űrlapnak, hogy az adatok szerveroldalra küldésével együtt újrafrissüljön az egész lap, erre írtam már korábban az event.preventDefault()-ot például (van még az event.stopPropagation() is, de most egyelőre hagyjuk).Na most ennyire volt idő.
Új hozzászólás Aktív témák
- Apple iPhone SE 2022 128GB, Kártyafüggetlen, 1 Év Garanciával
- Asztali PC i7 10700K RTX 3090 24GB 32GB 3600MHz 1TB NVME 1TB HDD
- DELL latitude 5420 Tartós Üzleti Laptop 14" -70% i5-1145G7 4Mag 16Gb 512GB SSD FHD IPS
- Honor 400 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi Note 10 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! I7 12700E / RTX 3070Ti / 32GB DDR5 / 1 TB SSD
- Honor 90 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
- SanDisk Extreme Portable 8TB (SDSSDE61-8T00-G25)
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Felsőkategóriás Gamer PC-Számítógép! Beszámítás! X870 /R9 9950X / RX 9070XT / 32GB DDR5 / 2TB SSD
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

