- Még sokáig drágák maradnak – sőt, tovább drágulnak – az SSD-k
- Házimozi belépő szinten
- Melyik tápegységet vegyem?
- AMD vs. INTEL vs. NVIDIA
- Milyen monitort vegyek?
- Amlogic S905, S912 processzoros készülékek
- Nem indul és mi a baja a gépemnek topik
- DUNE médialejátszók topicja
- Vezetékes FEJhallgatók
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
trisztan94
#2835
üzenetére
Erre írtam, hogy sztem csúf:
var waypointCounter = 2;
$('.btn-add-waypoint').click(function() {
waypointCounter++;
$('.last-waypoint')
.after('<div class="form-group waypoint last-waypoint"><label for="waypoints" class="col-md-1 control-label">'+ waypointCounter +'.</label><div class="col-md-11"><input type="text" name="waypoints[]" class="form-control" placeholder="Érkezési hely" /></div></div>')
.removeClass('last-waypoint')
.children('label')
.html(waypointCounter-1 + ".")
.parent()
.children('div')
.children('input')
.attr('placeholder', 'Megálló ' + (waypointCounter-2));
});Simán túlélhető ez a kód, de szerintem ez esetben ez a láncolás csak rontja mind a kód követhetőségét, mind a bejárhatóságot (persze megközelítés kérdése); meg általában komplett összeállított HTML-kód bedrótozása JS-kódba nem egy túl szép megoldás.
"de most így hirtelen annyi jut eszembe, hogy az after() tartalmát egy JSON fájlban tárolom, azt rakom bele. Vagy XML, de a JSON-t jobban szeretem, meg sokkal JS-barátabb is."
Nem értem, ez mire lenne jó. Attól nem lesz szebb a megoldásod, hogy még egy JSON-fájlba (vagy akármilyen másba) is kierőszakolod a tartalmat, aztán még azt az overheadet is ráteszed az egész feladatra, hogy a JSON-t parse-olni is kelljen (egyáltalán nem elhanyagolható, főleg, ha tök felesleges
), ami után már használhatod a kódot...
Szóval rossz ötlet."A .waypoint elemek növelését alapvetően úgy csinálnám, hogy egy ciklusba raknám az egészet, ami a waypointCounter értékéig megy, az első és utolsó elem distinct ("különböző"?), a többi csak megálló. Biztos van jobb megoldás, de most hirtelen ez pattant ki a fejemből. (tehát így az előbbi JSON mókázás sem kellene)"
Ezt nem is értem, mit akarsz megoldani ciklussal. Amikor egyenként kell hozzáadni a DOM-hoz lényegében majdnem minden tulajdonságukban egyező elemeket, akkor hogy jön ide a ciklus?
Több megoldás is létezhetne rá, template-szerű megoldás, egy adott, DOM-ban már bent lévő elem klónozása, majd egyes attribútumainak módosítgatása, vagy ha bedrótozás, akkor úgy, hogy az egyes elemek legyenek különszedve, jQuery-szintaktikával létrehozva (pl.
$( "<div/>", {
"class": "test asdasd bla"
});
), aztán egyberakva.Amúgy formelemek klónozására ez elég jó:
http://www.mdelrosso.com/sheepit/index.php?lng=en_GB&
Persze jelen esetben nálad nem valószínű, hogy szükséges (14 KB amúgy), csak eszembe jutott.
Új hozzászólás Aktív témák
- Arc Raiders
- Battlefield 6
- sziku69: Szólánc.
- Milyen légkondit a lakásba?
- Villanyszerelés
- Egyéni arckép 2. lépés: ARCKÉPSZERKESZTŐ
- Mibe tegyem a megtakarításaimat?
- Epic Store Ünnepi Ajándékozás - 4. nap: Sorry We're Closed
- Még sokáig drágák maradnak – sőt, tovább drágulnak – az SSD-k
- Házimozi belépő szinten
- További aktív témák...
- Asus ROG Zephyrus G16 Intel Core Ultra 9 185H/RTX 4060/16GB DDR5/1TB SSD eladó NÁLAM A LEGOLCSÓBBAN!
- MacBook Pro M1 13 inch 8/512GB magyar bill nálam a legolcsóbban
- Fujitsu 27" B27-8 TE Full HD 1920x1080 hófehér monitor állítható magasság, PIVOT, HDMI számla + gar
- AMD Ryzen 5 Félkonfig eladó!
- Asus Z13 Flow Acronym Limited Edition
- Eladó Samsung Galaxy S22 8/128GB / 12 hó jótállás
- ÚJ BONTATLAN Apple Macbook Air 15,3 M4 10C CPU/10C GPU/16GB/256GB - Égkék - HUN - mc7a4mg/a 3 év gar
- BESZÁMÍTÁS! Asus ROG G531GV Gamer notebook - i7 9750H 16GB DDR4 512GB SSD RTX 2060 6GB WIN11
- iPhone 15 Pro Max 256GB 90% (1év Garancia) Akár új akksival is kérhető!
- Akciós kisWorkstation! Dell Precision 3560 i7-1165G7 4.7GHz / 16GB / 512GB / Quadro T500 2GB FHD 15"
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
), ami után már használhatod a kódot...


