- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Krisztianby: Íróasztal STAUNING 80x160 jobb mint gondoltam.
- sziku69: Szólánc.
- Klaus Duran: Youtube AI szinkron
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: AMD Ryzen 7 7700X vs AMD Ryzen 9 9900X Cinebench R23 & R24 Benchmarkokban mérve
- sziku69: Fűzzük össze a szavakat :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
-
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
-
-
Mr. Y
őstag
Van esetleg köztetek olyan, aki kommunikált már HTML JavaScript-el USB-s eszközzel?
-
Mr. Y
őstag
Sziasztok!
Szükségem lenne egy paraméter fordítottjára.
Adott a lehetőség, hogy .style.top - al meghatározzuk egy adott elem (pl div) y pozícióját. Azonban én ezt visszafelé szeretném, le akarom kérdezni, hogy mennyi és azt egy numerikus változóban megjeleníteni.
Készítettem erre egy utasítássort, ami remekül működik, mindaddig, amíg az adott elem koordinátái nem változnak meg az oldal betöltéséhez képest.
Mivele ez az elem mozgatható, így szükséges lenne, hogy bármilyen pozícióba is kerül, le lehessen kérdezni és ne üres mező jelenjen meg, amint elmozdul.Itt az általam írt kód:
setInterval(changevalue, 3000)
function changevalue() {
var w = document.getElementById("line").style.top;
var n = Number(w)
document.getElementById("ycoordinata").value = n;
}Akárhogyan is nézem, ennek működnie kellene minden körülmények között. De csak addig hajlandó, míg
id="line"
nem mozdul el a helyéről.Tudtok ebben segíteni?
Előre is köszönöm! -
Taci
addikt
válasz
martonx #8392 üzenetére
Ismételten köszönöm szépen, innen már minden tiszta, rajtam áll csak, köszönöm a türelmet és a sok választ!
@nevemfel: Köszönöm a tippet. Csináltam infinite scroll-t, egyszerre 4 elemet tölt be, aztán a a 4. tetejéhez érve újabb 4-et és így tovább. Csak abban nem vagyok most biztos, hogy az összeset letölti-e akkor is, ha mint az őrült scrollozni kezdek lefelé. De mivel én csináltam, és olyat nem raktam bele, hogy ha már nincs képen, ne töltse tovább, ezért biztosan letölt mindent, nem áll meg. De akkor beleírom ezt is. Köszi.
-
nevemfel
senior tag
Én azt javaslom, hogyha sok képet akarsz megjeleníteni, akkor használj progresszív képbetöltést, tehát csak akkor kérd le a képet, ha az oldal görgetése a képhez ér (vannak rá kész libek), vagy inkább használj valami galériát, ami szintén nem tölti be az összes képet előre, csak ha a képlapozás odaér (szintén ezernyi kész program van rá, ami előre is tölt x darabot, lapozás irányától függően.)
-
martonx
veterán
"és hátha valóban ez a jó megoldás" - nem hátha, hanem ez az egyetlen jó megoldás. Ez egy publikus topik, amellett hogy segítünk, én legalábbis arra is próbálok odafigyelni, hogy ne szerepeljenek hülyeségek, tévutak, másokat ne vigyenek félre hülyeségek, még ha valakinek éppen nagyon be is csípődött a saját ötlete (ami önmagában elvi szinten nem is lenne hülyeség, csak épp megvalósításkor minden elvi előnye el is úszna).
CDN-re nem kell sokat találgatni, valamelyik nagy felhő providernél be kell regelni, és elkezdeni használni. AWS, Azure, Google Cloud mindegyik tud CDN-t, és ezek mindegyike sokáig velünk lesz még szerintem. És ahogy mondtam a te szinteden ingyenesek, majd ha lesz napi több ezer látogatója az oldaladnak, akkor elkezdhetsz fizetni havi 1-2EUR-t nekik a CDN-ért. Regisztráció után X ingyenes keretet szoktak adni 1 évig, szóval nyugodtan próbáld ki, első hónap után látni fogod, hogy normál esetben mennyit kellene fizetned (tippre a te felhasználásoddal csak CDN esetben nullát).
-
Taci
addikt
válasz
martonx #8390 üzenetére
Köszönöm a linket, úgy látom, ez (elsőre) egy nagyobb lélegzetvételű téma, de érdekel, és hátha valóban ez a jó megoldás, úgyhogy mindenképp végig olvasom és értelmezem.
Meg ő tudja is magáról, hogy szar a netje és türelmesen kivárja
Ezt azért tudjuk, hogy sajnos nem (mindig) így működik.A CDN-téma viszont teljesen ismeretlen számomra. Van esetleg ajánlott szolgáltató? Jó lenne, ha üzemelne még jó pár évig, és nem baj, ha fizetős, csak legyen próba verziója, hogy tesztelni tudjam.
Köszi!
-
martonx
veterán
Erre való az image srcset How to Use HTML5 “picture”, “srcset”, and “sizes” for Responsive Images (tutsplus.com)
Felejtsd már el a hálózati sebességet, lényegtelen. Valahogy nálad ez csípődött be, könyörgök felejtsd el!
Egy dologra kell figyelj, hogy a képernyő felbontásának megfelelő méretű képet add oda, és akkor mindenki boldog lesz.
Ha kicsi a képernyő (értsd mobil), akkor annak egy kicsi kép fog menni, ha nagy a képernyő, mert desktopon nézed, akkor annak egy nagy kép fog menni.
Egyébként is, attól, hogy valakinek lassabb a netje, még nem fogsz minden képet 32X32 pixelesen küldeni, hogy is nézne már ki. Meg ő tudja is magáról, hogy szar a netje és türelmesen kivárjaA linkelt példa szerintem egész jól bemutatja, elmagyarázza.
-
Taci
addikt
Igen, köszönöm, ez a megoldás egy része lehetne az elejének, hogy minden felhasználó megkapja a kisebb felbontású képet.
Viszont utána a lassú kapcsolaton lévőknél annak nem lenne értelme, hogy még azoknak a képeknek a nagy változatát töltse, amiken már rég túlpörgetett, miközben az újak, amik már szem előtt vannak, már töltődni kellene, de még mindig a korábban már túlpörgetettek nagyobb változatát tölti.
Ezért gondoltam egy szétválasztásnak sebesség szerint.
-
Mr. Y
őstag
Most olvasom csak a problémádat.
Erre viszonylag egyszerűen szokták a megoldást megadni. Minden esetben a kisebbik felbontás tölt be és az hamar meg is jelenik. Közben a háttérben (elrejtve) betölti a nagyobb felbontású képeket is. Ha azzal végzett (ezt egy egyszerű js rutinnal le tudod követni), akkor megjelennek a nagyok és eltűnnek a kicsik.Ez eredményez "gyorsan" betöltő weboldalt minden eszközön és mire a felhasználó eljut odáig, hogy részketesen szemügyre vegye a médeatartalmat is, addigra már be vannak töltve a nagyobb, jobb minőségű képek.
Amennyiben vizsont nem ez lenne a cél, akkor nem szóltam
-
Taci
addikt
válasz
martonx #8375 üzenetére
De valahogy akkor is tudnom kell, hogy melyik kliensnek adjam a lebutított (460x230-as) képet, és melyiknek a normál (1000x500-as) képet. (Akár saját tartalommal, akár máshonnan.)
Nem akarok én persze sebességméréssel bajlódni, egyetértek veled teljesen, de akkor hogyan tudom egyszerűbben ketté ágaztatni ezt, hogy a lassabb ezt kapja, a gyorsabb meg azt? Rendszer szinten van definiálva valami változó/függvény, amit ehhez fel lehet használni?
Pl. egy mobil rendszer (Android, iOS) tudja, hogy milyen kapcsolaton van. És a Windows is. A böngészők tudják? Meg lehet kérdezni tőlük? Ha igen, hogyan? -
Mr. Y
őstag
Ezt nem értem. Vissza raktam Value-ra és most működik
Egyéb kérdés: Most rengeteg alterntívát találtam, csak nem tudom, mi lenne a legegyszerűbb rá, egyik sem konkrétum.
Az volna még a cél, hogy készítettem egy DIV mezőt, amit vertikálisan tudok mozgatni a képernyőn. Ennek az Y pozícióját szeretném folyamatosan kijeleztetni egy numerikus váltóba, lehet az input is. Lényeg, hogy amint megmozdítom, az y koordináta kijelző átíródik az adott DIV legtetejének pozíciójára. De ha éppen a közepét, vagy az alját jelzi, az sem zavar.
(mintha egy Range lenne, csak nem az)
A találatok között bíztató az offSetTop, csak nem tudom, hogy ez erre való-e és honnan mér.
-
coco2
őstag
Google chrome, desktop, leguccsó verzió, localStorage kérdésbe ütköztem:
A local storage-nek egy vadiúj domain esetén nem kellene üresnek lennie?
Az alkalmazásom init-je arra számított, és csak log-ból látom, hogy kitörölt egy kulcsot, amin nem alkalmazás-specifikus adatot talált. Utólag csak a kulcs nevét látom ("
NavigationWidth
") az egykori tartalmat nem. Most belenéztem chrome dev tools-al a domain-hez tartozó local storage-ba, és ott egy ilyen kulcs: "Console
", tartalom:AlwaysExpand: false
CurrentQuery: true
DarkTheme: false
EnterExecutes: false
GroupQueries: false
Height: 92
Mode: "collapse"
Order: "asc"
OrderBy: "exec"
StartHistory: false
Na ez sem az enyém. És nem találtam erről doksit. Mi a hócipő ez? A világon semmi framework nincs a webcuccban. Még jquery sem. Direkt teljesen üres. Azokat a kulcsokat maximum valami plugin rakhatta oda, vagy a chrome. A chrome saját maga használja a local storage-et?
Valami tapasztalatnak / blog url-nek örülnék.
-
Mr. Y
őstag
Üdvözlet!
Ez miért nem akar működni? Elvileg kellene neki:
function lineok() {
document.getElementById("first").value = document.getElementById("second").value;
}Két numerikus változó van. Egyet nem lehet átírni, a másik input. Gombnyomásra kellene, hogy a két érték egyenlő legyen, de a fentebb látható kód valamiért nem működik.
-
martonx
veterán
Továbbra is azon a véleményen vagyok, hogy maximálisan értelmetlen sebességet mérned, pláne ha ezzel a célod a betöltés gyorsítása
mivel a pagespeed a plusz js szüttyögés miatt még le is fog pontozni, miközben a probléma az, hogy ha meg akarsz jeleníteni egy 460X230-as képet, akkor nem egy 2Mbyte-os 4K-s képet kellene lerángatni netről, hanem egy 20kbyte-os pontosan 460X230-asat.
És ezen nem fog semmit segíteni, hogy te page initnél pár másodpercig hálózati sebességet méricskélsz, hogy eldöntsd majd hogy, mekkora képet szolgálj ki. -
Taci
addikt
martonx és sztanozs: Köszönöm a tanácsokat, utána nézek ezeknek a megoldásoknak.
Azt még meg tudnátok mondani, a lap betöltésének melyik pontján tudom mérni a sebességet úgy, hogy a lap más elemeinek töltése ne kavarjon be? Mert így most csak az első teljes betöltés utánra tudok gondolni, de jó lenne még az elemek töltésének megkezdése előtt, hogy csak akkor kezdje el, miután sebességet mértem. Ezt a JS-hívást hova kell raknom, vagy hogyan kell meghívnom, hogy így működjön? Köszi.
-
martonx
veterán
Jól érted, pont ezt kell csinálnod. Szerver oldalon (ami most esetedben PHP) letöltöd, de nem tárolod, csak kiszolgálod a kicsire átméretezett képet.
És itt jön a történetben a csavar, hogy a rendszered fölé teszel egy CDN-t, ami egyébként kb. ingyenes, legalábbis ahhoz egész nagy terhelésednek kell lennie, hogy elérd a havi 1EUR-os fizetendő díját.
Azaz ez benne trükk, hogy te ezt tényleg nem fogod tárolni, ezt megoldja helyetted a CDN -
Taci
addikt
válasz
martonx #8366 üzenetére
Ezt nem értem.
Mármint azokat a képeket egyáltalán nem célom tárolni semmilyen formában. Viszont ha nem tárolom, átméretezni sem tudom őket. A megjelenített méreteit meg tudom változtatni, így át tudom "méretezni", de ettől a fájlméret még nem változik, nekem pedig most csak az számít. (Bár szerintem egyről beszélünk, csak én vagyon nagyon fáradt.)Ez a példa amit írtál azt jelenti, hogy letöltöm, átméretezem, aztán hivatkozok rá, hogy honnan van(?) (&source=).
Vagy valahogy mégis meg lehet oldani, hogy a kliens úgy kapjon kisebb felbontású (és így fájlméretű) képet, hogy én ezt nem tárolom? Ez lenne a "/kepatmeretező?width=460&heigh=230"? Egy kód szerver oldalon (php)? Hogyan működik? Minden képletöltésnél átméretez, és azt "adja oda"? De akkor minden egyes kép minden egyes letöltésekor ez lefut és dolgozik? Letilt a szolgáltató.Ezt optimalizálni úgy lehetne, hogy tárolom az átméretezett képeket, de ez nem opció.
Kérlek, írd le picit pontosabban, milyen megoldásra is gondolsz. Vagy ha van neve a megoldásnak, az is elég, ha megírod, és rákeresek. De egyelőre ez így nem világos, mert az előbb végig logizákozott vonal forráspazarlásnak tűnik csak.
Köszi.
-
;TLDR - van API ami visszaadja, de nem támogatott minden környezetben (Mac, iOS, Firefox, IE). IP alapján lehet még esetleg vélelmezni:
Privát IP tartomány: wifi
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
Minden más (ISP és publikus): mobilnethttps://stackoverflow.com/questions/8598065/how-do-you-detect-3g-vs-wifi-connection-on-mobile-safari
-
martonx
veterán
Az teljesen mindegy, hogy a képek sajátok-e, és te tárolod-e őket
A link alapján le tudod szedni, át tudod méretezni, és vissza tudod adni a megfelelő méretben.
A böngészőnek küldött html-ben nem az lesz, hogy<a href="https://kulsodomain.com/ezegykulsokep.jpg">
hanem az hogy<a href="https://azenoldalam.hu/kepatmeretező?width=460&heigh=230&source=https://kulsodomain.com/ezegykulsokep.jpg">
-
Mr. Y
őstag
Sziasztok!
Úgy vélem, kérdésem ide való, mint bármely más Webprogramozói topikba.
Adott egy Canvas, amit értékekkel töltök fel. Azonban szükségem lenne egy vízszintes, teljes szélességű vonalra. amit meg tudok fogni az egérrel, és fel-le mozgatni. Ez megvalósítható?Előre is köszönöm a válaszokat!
-
Taci
addikt
válasz
martonx #8362 üzenetére
Nem tárolok egyetlen egy képet sem (csak a blank, "kitöltő" képeket, amiket gyenge kapcsolatnál adnék vissza). Az összes többi csak link, RSS-ből kiszedve, nem én tárolom, így méretezni sem tudom. Muszáj vagyok számolgatással és sebességméréssel szétválasztani a terített tartalmat.
-
Taci
addikt
válasz
sztanozs #8360 üzenetére
(Ne haragudjatok, hosszú lett, "hangosan gondolkodom", offba is rakom, de tanácsot szívesen elfogadnék, van pár kérdésem benne.)
Ötletem sincs, mik lehetnek a jó mérőszámok, de ezeket a kategóriákat szeretném lefedni:
1) Gyenge hálózati kapcsolat
3G és alatta2) Közepes sebességű hálózati kapcsolat
3G és 4G között, 4G-t is beleszámítva, mert 1-2-5 MB-os képeket én sem szeretnék 4G-n töltögetni, hiába lejönne hamar. (több 10-100 db képről is szó lehet, attól függően, mennyit scroll-ozik a user).
Sőt, lehet, hogy ebbe a kategóriába kerülne minden mobileszközös kapcsolat.3) Gyors hálózati kapcsolat
Ezt meghagynám az asztali böngészőknek (LAN, otthoni vagy céges wifi, ahol nincs korlát az adatmennyiségre) a nagy fájlméretek miatt.Ezekhez akkor hogyan lehetne jól belőni a számokat? Amiket példának mondtál, azokat lehet is használni? Mindjárt nézem a hálózati sebességeket.
Preset,download(kb/s),upload(kb/s),RTT(ms) GPRS,50,20,500 Regular 2G,250,50,300 Good 2G,450,150,150 Regular 3G,750,250,100 Good 3G, 1000,750,40 Regular 4G, 4000,3000,20 DSL 2000, 1000,5 WiFi 30000,150000,2
kB-ban:
- erős 2G: 56 kB/s
- átlagos 3G: 94 kB/s
- erős 3G: 125 kB/s
- átlagos 4G: 500 kb/sEgy fontos kérdés ezen a ponton: Az oldal többi elemét is tölti, nyilván nem 1 szálon dolgozik. Viszont a sebességmérésnek csak akkor van értelme, ha a teljes sávszélesség az övé (mármint más alkalmazások is használnak, de legalább az oldalam más elemeinek betöltése ne lassítsa, amíg sebességet mér.)
Ezt melyik ponton tudom a legbiztosabban kivitelezni? a document onload nem jó, mert addigra már az első 4 elemet betöltötte. Ha előtte indítom, akkor párhuzamosan tölti a többi elemet is (css, js stb.).
Erre mi a jó megoldás, hol van a "jó mérési pont", ahol csak ez a szál futhat?Tegyük fel, hogy ez megvan (nincs, tanácsot kérnék ide is - de csak hogy a gondolatmenetet folytatni tudjam).
Egyszerre 4 képet tölt be az oldal - persze ha a user scroll-oz mint az őrült, akkor végtelen + 4-et. De nézzük azt, hogy egyszerre csak 4-et tölt be.
Ahogy néztem, egy átlagos, jó minőségű kép, amik a feed-ekben vannak általában 100 és 250 kB között vannak. Ezeket a képeket adnám a 2-es kategóriának.
Tehát ha 4 ilyen képet tölt egyszerre, és mind 250 kB, akkor 1 MB-ot kell betöltenie egyszerre (csak a képeket számolva).Na és itt elakadtam... Milyen számokat adjak meg a három kategória határétékeinek?
Mi számít elfogadható betöltési sebességnek?Ez ugye 4G-n 2 mp / betöltés (4 db kép). Ez rendben van, bőven belefér.
Erős 3G-n ez már 8 mp / 4 db kép. Tehát betölt az első adag, scrollozol lefel kicsit, és tölt a következő adag. 8 db képre ez már 16 mp. Túl sok, ez biztos.
Talán képenként 1 mp még belefér. 250 kB/s.Az 1)-es kategóriába akkor tartozna a 250 kB/s alatti sebesség.
A 2-es kategória lenne mondjuk akkor 250-500 kB/s között, így az átlagos méretű (250 kB) képekkel számolva 2-4 mp alatt töltene be egy-egy 4-es képcsoport.
Illetve valahogy ide kell szűrnöm az akár gyorsabb kapcsolattal, de mobilon netezőket, mert azért az adatcsomagot nem szeretném "leenni" róluk. Erre is biztosan van valami módszer, hogy kiszűrjem - keresek is majd.
Mobilon nyilván wifi-n is lehet netezni, és ott nem számít az adatmennyiség. Szóval nem mondhatom minden mobilról érkezőnek, hogy ti csak a 2)-es kategória képeit kapjátok. Bár gondolom, ez egy egyszerű IF-ág lesz (HA mobilról ÉS a sebessége a 2-es kategóriában)A 3)-as kategóriába pedig a nem mobil eszközről (hanem PC-ről) érkezők. Vagy HA mobilról ÉS a sebessége gyorsabb mint... na egyelőre ezt sem tudom, itt milyen sebességekre szűrjek.
Túl sok gondolat ez így egyszerre, leírom, aztán ha kifújtam magam, visszanézek majd.
Bocs, hogy ilyen hosszú lett. -
martonx
veterán
Rosszul közelíted meg. Mindig éppen akkora képet adj vissza, amekkora kell, semmivel se nagyobbat. És igen, ehhez kelleni fog némi backend, amivel ezt megoldod, hogy mindig tökéletesre méretezett, optimálisan tömörített képet tudj szerezni.
Semmi értelme nincs tesztelgetni a kliens sávszélességét. -
Szvsz célszerű három különböző méretű fájllal dolgozni, hogy melyik jön le az adott időn belül (pl 3 sec): 10 kB, 100 kB, 1 MB
Ez alapján be tudod lőni a sebességet. Ha valamelyik nem jön le a kért időn belül akkor az annál egyel kisebb sebességet választod (és a következővel meg sem próbálkozol).
De lehet más módszerrel is próbálkozni (pl websocket és fix méretű (random) payload és azt nézed meg, hogy adott idő alatt mennyi csomag jön át). -
Taci
addikt
Sziasztok!
Arra gondoltam, hogy a kliens hálózati sebességétől teszem függővé, hogy milyen (vagy milyen minőségű) képeket küldök ki az eszközre (ezeket természetesen felülbírálhatja, ha szeretné).
Ha gyenge a kapcsolata (pl. 3G), akkor csak 1-2 ismétlődő "template" kép, cache-li, és nyilván ugyanazt tölte be újra és újra. Ha jobb kapcsolata van (4G pl.), akkor már jöhetnek mondjuk a 250kB alatti képek is. Ha pedig mondjuk LAN-on van, akkor akár az egészen nagy képek is.
Így lenne 3 kategória, csinálnék az oldal betöltésekor egy sebességtesztet, és ehhez mérten adnám a tartalmat.
A kérdés csak az, hogyan lehet legjobban ezt a sebességtesztet elvégezni. Amilyen megoldásokat találtam, azok úgy működnek, hogy van 1 fix fájl (kép), annak adott a mérete byte-ban, azt letölti a kliens, és ahhoz mérten, hogy mennyi idő alatt szedi le, abból számolja ki a hálózati sebességet.
Pl.: [link]Ez kisebb fájlokkal is működik? Mert mondjuk ha adott egy rossz lefedettségű 3G kapcsolat, nyilván nem fogom azzal kezdeni az oldal betöltését, hogy rádobok egy 5 MB-os fájlt, hogy megnézzem, mennyit bír.
Elég egy 100kB-os is? Valós (használható) eredményt ad?
Vagy van erre jobb módszer, hogy megállapítsam a kliens hálózati sebességét?
Köszi!
-
Alcsi69
senior tag
Sziasztok!
Eléggé kezdő vagyok még az egész JavaScript témában, viszont kaptam egy érdekes assignment-et.
A lényege az lenne hogy Vue.js, Vuetify és Punk API segítségével egy olyan programot kell írni amiben lehet keresni illetve szűrni az egyes söröket.
Maga a program nem tűnik túl bonyolultnak, viszont én még VanillaJS-ben sem vagyok profi.Tudnátok esetleg jó resource-okat küldeni amelyek segítségével meg tudom írni ezt a programot?
Előre is köszönöm szépen a segítségeteket!
-
Prog-Szerv
csendes tag
válasz
martonx #8356 üzenetére
No hát egyelőremaradtam a datatables.js-nél ha már megtaláltam a megoldást, azok számára akik hasonlóval küzdenének mint én, üzenem, hogy ne foglalkozzanak a datatables.js DOM változatával.... az az adatmennyiség ami DOM verzióban 15 másodperc alatt töltődött be ajax-al 0.5 sec volt.
Mindenképpen az ajaxot ajánlom...
-
martonx
veterán
válasz
Prog-Szerv #8355 üzenetére
Mert ez az agGrid.simpleHttpRequest csak egy segédlet. Azaz simán le tudod ehelyett fetch-el kérni az adatokat, aminek úgy adsz át paramétereket, ahogy akarsz
-
-
martonx
veterán
válasz
Prog-Szerv #8352 üzenetére
client side, és minden ajaxot használ a mai világban
-
Prog-Szerv
csendes tag
Igen azóta már megtaláltam....datatables-ben több módon is lehet kezelni az ajaxos adatokad de mindegyik módszernek megvan a maga metódusa és én nem megfelelően formázott json tömböt adtam neki át...most hogy javítottam már jó, csak most meg lehet találtam egy datatables alternatívát.
-
Prog-Szerv
csendes tag
válasz
martonx #8350 üzenetére
Hát megnéztem a trailerét.....az elején ami elsőnek eszembe jutott: wtf....aztán amikor a kijelölésből előhúztak egy komplex grafikont akkor: najó .....
beszarás.... Van egy saját websabolonom ami egyben adminisztrációs rendszer is, itt szeretném használni. Mit javasolsz? client side? server side? Úgy látom ez nem ajaxot hazsnál az adatok kinyerésére...
-
coco2
őstag
válasz
Prog-Szerv #8345 üzenetére
Próbáltad már értelmezni azt a hibaüzenetet? Valami egy gyűjteményt használna, ami nincs ott. Talán db hiba php oldalon, nem tudom. Ha nem lehetetlen kibogarászni azt a forrást, kotord fel a hibás részletet. Amit bekoppantottál, nem hivatkozik hosszúságra.
-
martonx
veterán
válasz
Prog-Szerv #8349 üzenetére
Pont ott van a javaslatom az ag-grid, amit immár évek óta elégedetten használok. Bár ez meg néha már egy kicsit overkill
még az ingyenes verziója is félelmetes tudású.
-
Prog-Szerv
csendes tag
válasz
martonx #8348 üzenetére
Ezzel én is így vagyok....sajnos jelenleg még kell hozzá a jquery, de olvastam a fórumaikon, mások is kérdezték, hogy nem-e akarnak tőle függetlenedni, esetleg más hasonló library-re váltani és írták a fejlesztők, hogy tervben van csak nagy meló, mert ráépül ugye az egész datatables. Nemerég a bootstrap amit szintén használok az 5-ös verzióval végre levetette magáról a jqueryt és a fontawsome-et is....át is álltam énis az 5-ösre.
Visszatérve a problémára az a poén hogy tegnap előtt amikor kipróbáltam egy sima json file-al még működött, és nem tudok rájönni most mi a fene baja van....
Ja és igen a datatablest fejlesztik, csak hát igen jquery az alapja. Tudsz esetleg valami mást javasolni helyette? Én most már nem hazsnálok semmit az oldalaimon csak bootstrap meg vanilla js....meguntam hogy ezek a libraryk folyton elhalnak mire ráépítesz valamit meg fizetőssé válnak ugye font awesome... -
martonx
veterán
válasz
Prog-Szerv #8347 üzenetére
Hopsz, ezt benéztem, ez aktív fejlesztés alatt van. Ettől függetlenül számomra, amihez jquery kell, az "no way" kategória
Pl. ott van az ag-grid, legutóbb, amikor jquery nélküli datagrid-et kerestem (2017-ben, ez se most volt, de ez a DataTables már akkor se jöhetett szóba
), akkor botlottam bele, szvsz egész komoly tudású.
-
martonx
veterán
válasz
Prog-Szerv #8345 üzenetére
Szia!
Biztos, hogy egy ezer éve nem használt datatables megoldásra akarsz átállni?
-
Prog-Szerv
csendes tag
Sziasztok!
Datatables js-el kapcsolatban lenne kérdésem.... ajax használatakor lefut minden, visszajön a generált json, rendben vannak az adatok, de folyton ezt a hibát kapom:
Uncaught TypeError: Cannot read property 'length' of undefined
jquery.dataTables.min.js:62
Próbáltam utánanézni, mi a baj, de nem sokat találtam, és nekem eleve zavaros az ajax használata datatables-ben....szeretnék rá átállni mert gyorsítanom kell a betöltést, de az egyik helyen azt írja a dokumentáció hogy így kell hivatkozni rá: "ajax:{}" a másik helyen meg csak simán ajax:{} ....akkor most melyik a jó? Bizots vagyok benne hogy ez a hiba, csak nem tudom hol....mert ha kiszedem ezt a sort lefut minden rendben.
ajax: {
"url": "../tools/php/ajax_datatables.php",
"data":{table:"client"},
"type": "GET"
} -
martonx
veterán
válasz
nevemfel #8343 üzenetére
Én már elengedtem, mindenkinek nyugodtabb, ha elengedjük. Ő meg majd átgondolja, és rájön, hogy az egészet koncepcionálisan rontotta el / végső kínjában csak csinál egy jsfiddle példát, amin keresztül aztán 5 perc alatt megoldjuk a problémáját, több napos, mindenki idegeit tépő vergődés helyett
-
lanszelot
addikt
válasz
nevemfel #8336 üzenetére
Rosszul írtam /változó hívja meg nem én/:
amikor végrehajtódik ez a sorvar eredmeny = fuggveny();
akkor a változó lefuttatja a függvényt azaz az eseményfigyelő semmit se csinál mert mindenképpen lefut a függvény, ezáltal létrejön mindenképpen a változó , ha van esemény, ha nincs. -
lanszelot
addikt
Hello,
Véletlenül rosszul írtam, fentebb.Van egy esemény az oldal betöltésekor, erre az eseményre figyel egy esemény figyelő, ami létrehoz egy változó,
Azt a változót szeretném kint /eseményfigyelő függvényén kívül/ használni.Ennyit írnék, mert megint csak össze zavarok mindent.
-
lanszelot
addikt
-
lanszelot
addikt
válasz
nevemfel #8333 üzenetére
Nagyon szépen köszönöm, ez az amit kerestem.
"Eseménykezelőhöz pedig könnyen hozzá lehet rendelni egy meglevő függvényt."
Ezt nem tudtam, hogy nem kell létre hozni, hanem hozzá is rendelhetem.Mégsem jó, mert így hiába nem futtatom a függvényt, a változó létre jön, az event nélkül is.
-
-
martonx
veterán
válasz
lanszelot #8329 üzenetére
OK, akkor röviden, tömören: ezt így nem lehet megcsinálni
, bár végülis szegről-végről ez már elhangzott párszor, csak nem vagy hajlandó elfogadni.
De aztán ne legyen az, hogy 3 nap múlva kiszenvedsz valamit, és az orrunk alá dörgölöd, hogy márpedig meg lehetett csinálni, miközben amit kiszenvedtél, nem is arra vonatkozott, amit kérdeztél
-
lanszelot
addikt
válasz
martonx #8327 üzenetére
Azt nem írtam, hogy az működik, coco2 írta, írjam le a kódot.
Milyen kódot írjak, mikor az a kérdésem hogy lehet megoldani?
Amit szóban leírtam azt leírtam kódban. Ennyi.
Persze hogy nem működik, akkor minek kérdezném hogyan kell megoldani.
Ti bonyolítjátok túl.Egyszerű amit szeretnék:
függvényben keletkezett változót szeretnék függvényen kívül használni , az oldal betöltésekor azonnal.
Erre keresem még mindig a válasz. -
-
vlevi
nagyúr
Sőt, a JS tanuláshoz böngésző sem kell, nekem van valahol egy olyan tanfolyam anyaga elmentve, amihez le van töltve a JS futtató környezet, és azzal közvetlenül lehet a megírt scriptet. Tisztán a nyelv tanulasahoz talán még jobb is, mert nem keveredik össze a HTML-el.
Most nem vagyok gép előtt, nem ugrik be a neve, de lancelotnak itt egy YT lejátszási lista a JS alapjairól. -
lanszelot
addikt
Bármilyen szöveg szerkesztő megteszi.
én jelen esetben Visual Studio Code -t használok, de a jobb klikk asztalon, új szöveges file is tökéletesen megteszi.
.js file-ba mentem, html, ben hivatkozok a src -re a body tag legalján
akármelyik böngészőben futnia kell.olvasd már légyszívs vissza, mire válaszoltam, és kinek
-
coco2
őstag
válasz
lanszelot #8318 üzenetére
Na tanuljuk azokat az alapokat még egy kicsit: precizitás.
Ha az a kérdés, milyen környezetben futtatod, és mondjuk egy google chrome-ot használsz, akkor leírod, hogy google chrome, megnézed a névjegynél az adatot, hogy "Version 89.0.4389.82 (Official Build) (64-bit)", és linket dobsz rá, honnét töltötted le, pld: Innét tölthető le.
Ha az a kérdés, mi a forrás egészben, és mondjuk egy weblapba írod be a cuccot, úgy futtatod, akkor vagy a'la sparta ilyesmit koppantasz be:
<!DOCTYPE html><html><body><script>
valtozo= 23;
alert(valtozo);
</script></body></html>
Vagy a népek mostanában favorizálják a jsfiddle-t, és akkor linket dobsz rá.Ha nem így csinálod, nem lesz ismételhető és ellenőrizhető, miről beszélsz.
Fuss neki újra.
És még valami:
Azért mert lenézel, azzal nem tanítasz.
Itt valami hatalmas nagy tévedés történt. Mi nem azért vagyunk itt, hogy tanítsunk. Ha tanulni akarsz, és csak egy kicsi segítség kell hozzá, amit egyszerűen, könnyen, és nagyon kevés erőfeszítéssel - ami belefér a grátisz kategóriába - meg lehet neked adni, akkor _talán_ kapsz segítséget. De ez nem tanóra, te nem az iskolában vagy, nekünk nem kötelességünk tanítani. Az olyasmi fizetésköteles szolgáltatás. Érted?
-
lanszelot
addikt
-
lanszelot
addikt
válasz
lanszelot #8316 üzenetére
coco2
function magyarazat() {
var kivele = "kivele";
};
magyarazat();
console.log(kivele);
nevemfel
Írd be és próbáld kifunctionban globalLeszek elé kellene egy var szócska
de még akkor se fog működni, mert kintről így nem tudsz benyúlni egy functionba
functionból ki tudsz, de be nem
-
lanszelot
addikt
válasz
nevemfel #8313 üzenetére
Hello,
Csodálkoztam is rajta, hogy nem definiálod a globalLeszek -et mint változót/konstanst, de kipróbáltam, és dobta is a hibát, hogy nincs definiálva.
Tehát az a kód úgy nem működik.martonx
Ismerem a scope szabályokat, de amit írtál az egy function-on kívüli változó, nem functionban lévő.
Módosítsd a functionon belűl, és a kapottértéket használd kint.
Ez az amikor egy function-ból használod a változót.coco2
nem tudom hogy lehet kódot berakni ide, </> ez nekem nem működik, a (){}; ezt pótold ki, mert nem lehet úgy beírni idefunction magyarazat
var = "kivele"magyarazat(
console.log(kivele
-
martonx
veterán
válasz
lanszelot #8311 üzenetére
Sose szégyen utána nézni a dolgoknak, és tanulni, ha már ezzel foglalkozol: Scope - MDN Web Docs Glossary: Definitions of Web-related terms | MDN (mozilla.org)
-
-
lanszelot
addikt
válasz
lanszelot #8310 üzenetére
Szerintem ez zsákutca, így vissza térnék az alap kérdésemhez.
Valahogy ki lehet olvasni egy változót function-ból?
Egy functionban lévő változó értékét szeretném functionon kivül használni, már oldal betöltésénél azonnal. /nem csak újra rendereléskor/Az is jó, ha kint elkészítem a változót, és a függvényben adom meg, vagy megváltoztatom az értékét. Mindegy mi módon, csak kiszedni a függvényből már oldal betöltésnél.
-
coco2
őstag
válasz
lanszelot #8307 üzenetére
Minden betölt első töltéskor. Amit figyelmen kívül hagytál, az a betöltés sorfolytonos rendjének és következményeinek a hatása. Ha az a változó a sciptben előrébb már szerepelt bal oldalon, akkor van értéke. Ha nem, akkor nincs.
Ez itt null érték hibára fut:
alert(valtozo);
valtozo= 23;
Ez itt kiírja, hogy 23:
valtozo= 23;
alert(valtozo);
-
lanszelot
addikt
console.log(változó);
Oldal betöltésre undefined
De bármit csinálok, akkor megkapja az értéket
Ha egy elem felé viszem amire van beállítva figyelés, vagy gombot nyomok, bármire, akkor már meg van a változó.Nincs a valtozora semmi beállítva. Se gomb, se figyelés se semmi.
Mégis csak oldal újra renderelésnél kap csak értéket.Amúgy sok minden nem tölt be mikor megnyitsz egy oldalt a böngészőben, és csak újra rendereléskor tölt be.
-
coco2
őstag
válasz
lanszelot #8305 üzenetére
Nem sikerült elmagyaráznod.
amikor megnyitsz egy oldalt a böngészőben akkor betölt az oldal.
No, ekkor még nincs meg a változó.A javascript nem program, hanem script. Ahogy tölt az oldal sorfolytonos karakterekkel, úgy jön létre folyamatosan. Szóval az állításod false.
De ha az oldalon pl megnyomok egy gombot, akkor már megvan.
Ha akarod, létrehozhatsz egy változót gombnyomásra is.
De nekekm már a betöltéskor kellene a változó.
Hiszen írtam. Php scripttel amit írsz ki, a html-el együtt létrejön a script.
Olvasgatni kellene a francos piros könyvet.
-
-
lanszelot
addikt
Hello,
Valahogy ki lehet olvasni egy változót function-ból?
Egy functionban lévő változó értékét szeretném functionon kivül használni.
-
Mr. Y
őstag
válasz
lanszelot #8295 üzenetére
Egy könyvnek nincsen szavatossága. Lehet, hogy a tartalma már elavut néhol, de egy erős alap lehet még az első könyv is a témában. Gondold át, mit is szeretnél megcsinálni.
Éljünk a példáddal: Szomjas vagy.
Az első dolog, amit át kell gondolni, hogy mi lesz a vége, mi lesz a megoldás. Ezesetben az, hogy iszol.
És itt jön a többi, hogyan jutsz el a kiindulási pontról a végcélig. Első lépésként tudni kell, hol találsz vizet. Ha nem tudod, erre rá tudsz keresni / kérdezni. Amint ez a válasz megvan, azt kell kitalálni, hogyan jutsz el a víz lelőhelyére. Ha ott vagy, akkor jön a következő: hogyan kell inni?És így tovább. Ahogyan írták előttem is, apró részletekre kell szedni. Nem feltétlen az lesz a legjobb tanulási metódus, hogy beleállsz életed legnagyobb projektjébe. Hanem az alapok elsajátítása. Amire viszont kiváló lehet egy már általad megromlottnak titulált forrás is. Hiszen a technika igen, de az alap kódok nem változtak.
Új hozzászólás Aktív témák
Hirdetés
- Lenovo ThinkPad P1 Gen 3 UHD, Érintőkijelző, i7-10875H, 32GB DDR4, 256GB SSD, 27% ÁFÁS SZÁMLA, 1ÉV G
- Lenovo ThinkPad L490 FHD, TOUCH, I5-8365U CPU, 16GB DDR4, 256GB SSD, 27% ÁFÁS SZÁMLA, 1ÉV GARANCIA!
- Lenovo ThinkPad T490 FHD, I5-8365U CPU, 16GB DDR4, 256GB SSD, 27% ÁFÁS SZÁMLA, 1ÉV GARANCIA!
- 2020 M1 macbook pro 8/256GB elado/cserelheto
- Lenovo ThinkPad T480s FHD, Érintőkijelző, I5-8350U CPU, 8GB DDR4, 256GB SSD, 27% ÁFÁS SZÁMLA, 1ÉV GA
- HIBÁTLAN iPhone 13 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3021, 91% Akkumulátor
- GYÖNYÖRŰ iPhone 16 128GB Ultramarine -1 ÉV GARANCIA - Kártyafüggetlen, MS3097, 100% Akkumulátor
- HIBÁTLAN iPhone 15 Pro Max 256GB Natura Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3007, 91% Akksi
- HATALMAS AKCIÓK! GARANCIA, SZÁMLA - Windows 10 11, Office 2016 2019 2021,2024, vírusírtók, VPN
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: FOTC
Város: Budapest