- Kifejezetten Mac-felhasználóknak szánja két új monitorát a BenQ
- Penta-Tandem néven jelöli az új, ötrétegű QD-OLED paneljeit a Samsung
- Csak el ne fújja a szé az Akko új egereit
- Pénztárcabarát AOC monitorok jöttek gyors képfrissítéssel
- Ügyes vagy tuningban, és nyernél 10 000 dollárt? Irány a jelentkezés!
-
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
- Fotók, videók mobillal
- Fejhallgató erősítő és DAC topik
- PlayStation 5
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Kínai és egyéb olcsó órák topikja
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Exkluzív órák
- TCL LCD és LED TV-k
- Mesterséges intelligencia topik
- Steam Deck
- További aktív témák...
- GARANCIÁLIS! Lenovo IdeaPad Gaming 3 Ryzen 7 5800H, RTX 3050 Ti, 165Hz, 16GB RAM
- Ezzel fixen nem kell hunyorognod! 43"/4k/144Hz/HDR csak a tiéd!
- 2 ÉV GARANCIÁS Gigabyte GeForce RTX 4070 Windforce OC 12Gb videókártya eladó. Az ár NEM FIX
- Sapphire GPRO X070 8GB GDDR6 - RX 5700 XT passzív kaidás
- MOZA Racing R3 PC/XBOX !!GARIS 2027.12-ig!!
- HP EliteBook 840 G9 i7-1265U 16GB 256GB 14" FHD+ 1 év teljeskörű garancia
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- GYÖNYÖRŰ iPhone 12 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4540, 100% AKKSI
- Bomba ár! Lenovo ThinkPad Yoga 370 - i5-G7 I 16GB I 256SSD I 13,3" FHD Touch I W11 I Cam I Gari!
- Kihagyhatatlan ajánlat! Lenovo ThinkPad P14s Gen 5 Ultra 7 165H (vPro) 32gb DDR5 ram RTX500 ADA 3K
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


