- Jól felszerelt, csúcskategóriás külső videokártya jött a Gigabyte zászlaja alatt
- Gamescom 2025: Limitált szériás Godlike X lap és más finomságok az MSI-nél
- Leégett az első Radeon a hírhedt 12V-2x6 tápkonnektorral
- India betiltja a pénzalapú online játékokat
- Az előírások megszegése miatt éghet le egyes alaplapokon a Socket AM5 foglalat
- Hővezető paszták
- Kompakt vízhűtés
- Milyen házat vegyek?
- Azonnali notebookos kérdések órája
- Azonnali fotós kérdések órája
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Azonnali informatikai kérdések órája
- Milyen TV-t vegyek?
- Melyik tápegységet vegyem?
-
PROHARDVER!
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
Alapvetően annyi a baj azzal, hogy JavaScripttel állítgatod a stílusát egy DOM-elemnek, hogy így keversz két különböző területet: alapvetően a CSS feladata meghatározni az oldal megjelenését (benne van a nevében, hogy stíluslapokat készítesz), JavaScripttel pedig inkább a viselkedését illik manipulálni az oldalnak. Nyilván vannak kivételek, de ez pont olyan példa, amire érvényes. Persze nem érdemes túlizgulni, ez már csak szépítgetés, szemantikai okoskodás.
Most amúgy kíváncsiságból rákerestem a dologra, és találtam egy cikket, ami vitatja az osztályok ráhelyezésének vagy levételének elvét, és inkább a data-attribútumok használatát javasolja:
http://toddmotto.com/stop-toggling-classes-with-js-use-behaviour-driven-dom-manipulation-with-data-states/
Elfogadható, amit ír, de túlzásba esik az osztályok használatának elvetésével. De egyébként nem rossz a data-attribútumok használata sem."Lenne esetleg értelme minden sort egy ID-val ellátni, a szűrést pedig client-side/local storage-ban elvégezni majd az eredmény alapján állítgatni a displayt?"
Semmi értelme nem lenne ennek a megoldásnak. A szűrést így is az összes adaton kellene elvégezni, itt pedig semmiféle előnyt nem jelentene az, hogy csavarintasz és bonyolítasz egyet a dolgon.
Gondolj bele, a mostani megoldásod egy document.getElementsByClassName hívás, ami visszatér egy HTMLCollectionnel, amin végigmész egy for ciklussal, és megnézed, benne van-e az adott sorban valahol a keresett elem, aztán kész vagy. Ez is nagyon gyorsan fog végezni, még ha többezer elemed lenne, akkor se lenne vészes, a DOM-manipulálás már más kérdés. Ha viszont átállnál arra, hogy id-k szerint kérdezgess le, akkor értelemszerűen az id-kat is nyilván kellene tartani egy másik tömbben (mert különben honnan tudod, hogy miket kellene lekérdezni? Ha meg nem tudod a konkrét id-kat, akkor vissza kell térned az eredeti, amúgy ezerszer értelmesebb megoldásra), és azon a tömbön kellene végigmenned, lekérdezned id szerint az elemet, majd pont ugyanezt a keresést végrehajtani. Nem nyertél semmit, sőt, még overheadet is tettél a dologba (plusz egy-egy lekérdezés minden elemre az id szerint is, miután megkaptuk a tömbből az elemet).
Azt meg nem tudom, hogy érted, hogy "client-side"-ban elvégezni a keresést, most is kliensoldalon keresel.localStorage-be átpakolni a keresést meg megint semmi értelme, mit keresne ott, miért kellene perzisztens módon tárolnia a kliensnek az összes adatot. Nem beszélve arról, hogy valószínűleg az oldaladon változni fognak ezek a megjelenített és szűrhető adatok, így a localStorage-et mindig szinkronban kellene tartani az újabb adatokkal.
Új hozzászólás Aktív témák
- Nagyon szép állapot!! Lenovo ThinkPad T14s i5-113G7 16GB 512GB SSD
- I3 13100F + MSI B660M-P + 8gb DDR4 + 128gb ssd + Táp
- Eladó RTX 3090 24GB Videókártyák (Suprim X, Aorus, Gaming X) Felső kategóriás! Jótállással! Dobozos!
- Yamaha 5.1 hangrendszer NS-LC5 / NS-CLC5 / NS-ELC5 + YST-SW012 mélynyomó
- Precision 5550 15.6" FHD+ IPS i7-10850H T1000 16GB 512GB NVMe magyar vbill ujjlolv IR kam gar
- BESZÁMÍTÁS! Asus Maximus VIII Hero i7 6700K 16GB DDR4 512GB SSD RX 5700 XT 8GB Zalman i3 NEO 700W
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Dell Precision 5810 Intel E5-1650 v3 128GB RAM 2x512GBHDD 1x512GB SSD Quadro K4200
- Konzol felvásárlás!! Playstation 5, Playstation 5 Pro
- Bomba ár! HP Omen - i5-7300HQ I 8GB I 128SSD + 1TB I GTX1050 I 15,6" FHD I Cam I W11 I Garancia!
Állásajánlatok
Cég: FOTC
Város: Budapest