-
Fototrend
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
-
tepenzed
őstag
köszi, ez megvan, csak az a baj, hogy az adatokat egy firebase adatbázisból olvasom be majd mappelem, a képen látható eredményt kapva. Szóval nem tudom így manuálisan beírogatni a számadatokat, hanem ezen az objektumon kéne végigmenni és úgy felépíteni a barchartot.
Egyébként erről van szó:[link]
-
tepenzed
őstag
Nagyon köszönöm, hogy megnézted, így már érthetőbb, valamiért viszont azt kapom, hogy:
ERROR TypeError: Cannot read property 'entries' of undefined
at SafeSubscriber._next (file:///android_asset/www/build/main.js:2649:46)
at SafeSubscriber.__tryOrUnsubA sulyhavontát logoltam és megjelennek az adatok, szóval nem értem, hol akad el. Rá tudnál pillantani kérlek ? Beleírtam a beolvasás módját, valamint a d3 nestinget is. (lefutni nem fog jsfiddlen, mert adatbázisból olvas)
-
Doink
aktív tag
válasz tepenzed #6753 üzenetére
Ha kicseréled a firebase részt egy JSON.parse()-ra akkor viszont lefutna az is. Az hogy hol akad el az meg oda van írva: 2649:49 és az a baja hogy egy undefined-on hívódik meg az entities() fgv.
Itt azért olyan kérdés is felmerül hogy nem-e egyszerűbb a d3.nest előtt összedobni ezt a struktúrát egy ciklussal mint utána 4-el. -
Zedz
addikt
Sziasztok,
SPA + Expressjs auth rendszerrel foglalkozott már valaki? Több írást is olvastam arról, hogy a JWT bad practice erre a célra. A serverless megoldásokat szeretném mellőzni (firebase, auth0.. társai). Valakinek tanács, ötlet?
-
Zedz
addikt
Köszi, megnézem.
(#6759) martonx
http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions/ -
martonx
veterán
Ha a jwt-t csak arra használod, hogy az api kéréseket ne engedd boldog boldogtalannak, azaz session-t nem kezelsz velük, akkor szerintem a jwt a legegyszerűbb. Ha minden egyes híváskor azt is tudni akarod, hogy kitől jött, azaz session is kell neked, akkor valóban egy klasszikus cookie based session-ös megoldás tisztább lenne.
Én kérek elnézést!
-
kw3v865
senior tag
Sziasztok!
Kezdő vagyok JS-ben, jelenleg ezzel a problémával küzdök: a features nevű változó értékét (ami egy tömb) szeretném felhasználni a függvényen kívül. Ez most szépen kiírja a konzolra a tömb értékét:
function refresh(){
var features;
$.ajax('http://xxx', {
type: 'GET',
data: {xxxxxx}
}).done( function (response) {
var features = xxxxx
return console.log(features);
})
};
console.log(refresh())Viszont én fel akarom használni a features változó értékét. Mondjuk úgy, hogy egy másik (külső) változónak átadom az értékét. Hogyan lehet ezt megtenni?
Ha azt csinálom, hogy return console.log helyett :
return features
, majd így hívom meg a függvényt:var tomb = refresh();console.log(tomb);
Akkor undefined lesz.[ Szerkesztve ]
-
martonx
veterán
válasz kw3v865 #6764 üzenetére
Szia,
Több gond is van itt.
Egyrészt az ajaxnál nem a response-t használod, hanem az xxxx-et, aminek semmi értelme.
Másrészt az $.ajax egy promise-t csinál, ezt kapja el async módon a .done.Azaz a var tomb = refresh();console.log(tomb); esetben azért kapsz undefined-ot, mert hamarabb tér vissza a függvény, mint ahogy a .done-hoz visszatérne az ajax eredménye.
Megoldás, a függvényednek egy promise-t kellene visszaadnia, és ha kívülről akarod használni, akkor kívül kell majd használnod a .done-t.
Egy jsfiddle-t indíthatnál a probléma szemléltetésére, akkor konkrétabb segítséget is kaphatnál.
Én kérek elnézést!
-
kw3v865
senior tag
válasz martonx #6765 üzenetére
Köszi a választ, Ajaxot most látok először, elkezdek alaposan utánanézni, mert még nem értem mi az a promise.
Jelenleg így néz ki (sajnos a CORS miatt nem működik ezzel a demo adattal, tehát a poligon nem jelenik meg itt) JSFiddle-ben:
http://jsfiddle.net/kw3v865/1zo8r5Lp/748/A lényeg az, hogy ez egy poligont kellene, hogy megjelenítsen az alaptérképen.
Nálam localhost-os szerverrel, saját adatokkal működik is. A lényeg az lenne, hogy úgy szeretném megírni, hogy - mivel a szerveren az adatok időnként változnak - egy függvénybe akarom beletenni ezt:vectorSource.addFeatures(formatWFS.readFeatures(response))
Magyarul az ideális működés az lenne, hogy amikor meghívom a függvényt, akkor újra hozzáadja a feature-t (poligont) a térképhez (a régit nem szabad, hogy törölje!).
-
martonx
veterán
válasz kw3v865 #6769 üzenetére
Légyszi üzemeld be a CORS-t, mert így elég nehéz lesz segíteni. Bár önmagában már ezzel is sokat tisztult a kép, hogy mit szeretnél, mert szerintem eredetileg nem is igazán ezt kérdezted
Kicsit beformáztam, hogy ne úgy nézzen ki, mint egy hányás, és szerintem ez már csak szimpla kód refaktorálás feladat.
[ Szerkesztve ]
Én kérek elnézést!
-
kw3v865
senior tag
válasz martonx #6770 üzenetére
Köszi, hogy próbálsz segíteni.
Ezt a Fiddle-t most hagyjuk szerintem, mert összetettebb a probléma, kivülállóként nehéz átlátni. A saját adataimat kellene megosztanom, azt meg nem akarom (port forward-olás meg egyéb dolgok, elég macerás). Végül sikerült egyébként rájönnöm, mi volt a gond.Viszont ismét felmerült egy kérdés: adott ez a függvény, amibe be van ágyazva egy másik (jquery):
var getObject = function (curr_id, prev_id) {
jQuery.ajax(url,
{
dataType: 'json',
success: function (data, textStatus, jqXHR) {
if (curr_id == prev_id){var b};
return b;
},
error: function (jqXHR, textStatus, errorThrown) {
console.log(errorThrown);
}
});
}Hogyan tudom megoldani, hogy ha meghívom a getObject függvényt, akkor visszadja a "b" nevű változó értékét?
-
sztanozs
veterán
válasz kw3v865 #6771 üzenetére
igazából a jquery nem ad vissza semmit (azonnal) - a success:-ben kellene azt feldolgoznod - ezért hívják ajax-nak a lekérdezést ("Asynchronous JavaScript + XML")
illetve ha async: false - ot állítasz be, akkor vár (blokkol) amíg visszatér a lekérés, és vissza tudod adni így:
return jQuery.ajax...
Viszont ez jQ v1.8 óta deprecated.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Jim-Y
veterán
válasz sztanozs #6772 üzenetére
Nem csak, hogy deprecated, de talan a legnagyobb worst practice a javascript ekoszisztemaban. A kolleganak eloszor is a javascript asynchronous termeszetet illetoen kene olvasgatnia a neten, mert a kerdeseibol vilagosan latszik, hogy nincs tisztaban, hogy hogyan kell szervezni egy aszinkron js kodot. A problema megoldasara/kezelesere tobb modszer is van, de mindegyikkel gondja lesz amig nem erti az alap koncepciot.
[ Szerkesztve ]
-
Jim-Y
veterán
válasz kw3v865 #6771 üzenetére
Amint XHR-t hasznalsz (ajax, fetch, etc) megvaltozik a kodod viselkedese es neked is mashogyan kell gondolkodnod es a kodod is mashogy kell szervezned. A legjobban tenyleg akkor jarsz ha utananezel a neten (ezer + 1 leiras van rola) hogy hogyan kell aszinkron js kodot kezelni. Arra kell gondolnod, hogy egy AJAX hivas eredmenyere csak valamikor a jovoben szamithatsz (nyilvan mivel egy tavoli szerverrel kell kapcsolatot teremteni ami kb barmennyi ideig eltarthat). Neked ezen ido alatt, amig varsz a tavoli szerverre nem szabad felfuggesztened a programod futasat, annak tovabbra is mukdonie kell. Majd amikor a jovoben megerkezik az uzenet az eredmennyel azt fel kell dolgoznod. Ez ugye az aszinkron mukodes de talan mar ebbol is lehet sejteni hogy a szinkron gondolkodas nem jo es te a peldadban es a kerdeseddel szinkron kodban gondolkozol.
-
Csupán érdeklődésképp, ha már így szóba került...
Pure JavaScriptben van-e coro(utine) függvény? Természetesen nem built-in-re gondolok, hanem bármilyen sajátra. Illetve await és valami executorban futtatásra is kíváncsi vagyok. Bár gondolom az executor veszett ügy, mivel még mindig egy egyszálas, alapvetően böngészőben futó szkriptnyelvről beszélünk. Azt meg nehezen tudom elképzelni, hogy a browser csak úgy engedi a threadek halmozását.
Eleinte angol billentzuyetet akartam. De aztán megismerkedtem a nagy 'Ő'-vel!
-
Nahát, ez remek hír!
Feltétlenül utána kell néznem akkor, köszönöm!
Eleinte angol billentzuyetet akartam. De aztán megismerkedtem a nagy 'Ő'-vel!
-
Winner_hun
félisten
Előre szólok semmit nem értek hozzá, sose csináltam ilyet, sose tanultam, stb...
Itt van ez a scriptOlyan módosítást lehet benne eszközölni hogy az Allow all U-turns ne csak egy felületen, egérrel való kattintásra működjön hanem gyorsbillentyűt lehessen hozzárendelni?
A kódját elnézve a végén van ez:
$('#sidebar').on('click', '#allowUturns', function(event) {
switchUturn(1);
updateButtons();
});
$('#sidebar').on('click', '#disallowUturns', function(event) {
switchUturn(0);
updateButtons();Ha jól gondolom talán itt kéne valamit mókolni.
► "Kicsit olyan webcaritas" ◄ ヅ
-
martonx
veterán
válasz Winner_hun #6779 üzenetére
ha jól sejtem a click mellé kellene egy szókösz keyup is, hogy mindkét eseményre reagáljon. Aztán belül már csak figyelned kell, hogy melyik gomb lett lenyomva.
Hm, bár a keyup nyilván csak inputokhoz, vagy documenthez kötve értelmezhető. A sidebar nem tudom micsoda.Én kérek elnézést!
-
martonx
veterán
Off: honnan kerül elő ilyen ipari méretű régi fos, legacy jquery-s példakód? Miért nem tud már a jquery is végre kihalni? Komolyan ki az, akinek így 2018-ban fontos, hogy IE11-el is kompatibilis legyen, amit csinál?
Én kérek elnézést!
-
#78693120
törölt tag
válasz martonx #6781 üzenetére
Jártál te már hivatalban, vagy orvosi rendelőben? Ott még IE9-10 is akad.
Illetve van olyan családtagom, akit nem tudok a nem frissített XP-ről ("csak lelassítják a gépet") és az azon futó IE-ről lebeszélni. Neki elmondása szerint működik, de hogy mik lehetnek azon a gépen, azt el sem tudom képzelni. Szerencsére magának telepíti, nem az én dolgom...
-
#78693120
törölt tag
válasz martonx #6783 üzenetére
Hidd, hogy egyesek tényleg ilyet használnak és nem hajlandóak az IE-t lecserélni. Hiába mondod nekik, hogy van FF/Chrome is. Ami jó volt 15 éve, az most is jó és ez igaz a P3-ra is. Amíg szét nem esik, addig használják...
Illetve az IE még sokáig kap támogatást, mert amíg az MS kiad olyan OS-t, amiben van IE (Win10 ugye), addig azt támogatják is biztonsági frissítésekkel. Szóval még egy darabig velünk marad az őskövület browser.
Amúgy tesztelő vagyok és ugyanúgy tesztelnem kell mindent IE11-en is, szóval nem csak nálunk ez a helyzet. Hiába egyre alacsonyabb a százaléka, ha ez sok felhasználó esetén még igen magas számot jelent és nem lehet lemondani róluk.
[ Szerkesztve ]
-
Winner_hun
félisten
válasz martonx #6780 üzenetére
Passz, nekem ez kínai, nem az én scriptem, de jó lenne egy kicsit tuningolni hogy hatékonyabb legyen a munka. Azt hittem könnyen megoldható, csak beírni valami sablonos dolgot a klikk mellé hogy azzal is működjön aztán hajrá.
Van egy oldalsáv, azon jelenik meg a gomb, gondolom az lenne a sidebar.► "Kicsit olyan webcaritas" ◄ ヅ
-
ben800
aktív tag
Sziasztok !
Nemrég kezdtem el érdeklődni a javascript iránt hobbi szinten, és szeretnék egy apróbb egyszerű játékot létrehozni, ahol ki vannak kötözve a léggömbök, mozognak egy picit jobbra balra, mintha a szél fújná őket, majd ha lelövünk egyet akkor X százalékos eredményt ad véletlenszerűen. Találtam is magamnak egy kisebb sablont githubon.
Viszont az animáció részében picit elakadtam, próbáltam az elemeket mozgatni, így mindig csak az egyik elem mozgot, ezt ki is kommenteltem a kódban, majd második nekifutásra megpróbáltam .animate-el, de ilyenkor meg elszállnak a lufik és nem maradnak meg egy helyben . Konkrétan már csak az hiányzik hogy úgymond egy helyben mozogjon a 4 darab lufi, és úgy mintha a szél fújná őket picit ide-oda.
A filet feltöltöttem ide, ha valaki tudna egy picit segíteni ebben akkor nagyon hálás volnék
var balloon = $(".balloon");
var counter = 0; //számláló
var percentage = 0; // százalék
if (percentage == 0){
percentage = Math.floor(Math.random() *100);
}
function start () {
var direction = 'B';
var right = 0;
var left = 0;
var timer = 0;
for(var i=0; i<4; i++){
var balloonCopy = balloon.clone();
balloonCopy.css({left:370 + i*100});
balloonCopy.css({top:400});
balloonCopy.appendTo("body");
if(direction == "B") {
var top = balloonCopy.animate({top: "100%", top: Math.random() * 100 + "px" }, 16000 - Math.random() * 4);
}
balloonCopy.click(function() {
pop_sound.play();
$(this).remove();
counter = counter + 1;
$(".counter").html(counter);
if(counter > 0) {
$(".percentage").html(percentage + "%");
$('.score-box').addClass('ready');};
});
};
balloon.remove();
}
/*
function doMoveTop() {
if( direction == "B" && parseInt(foo.style.top) < 80) {
foo.style.top = parseInt(foo.style.top)+1+'px'; }
else if(direction == "B" && parseInt(foo.style.top) >= 60){
foo.style.top = parseInt(foo.style.top)+1+'px';
direction = "T";
}
else if(direction == "T" && parseInt(foo.style.top) > 60){
foo.style.top = parseInt(foo.style.top)-1+'px';
}
else {
foo.style.top = parseInt(foo.style.top)-1+'px';
direction = "B";
}
setTimeout(doMoveTop,40);
}
function init() {
direction = "B";
foo = document.getElementById('balloon1');
foo.style.top = '18px';
doMoveTop();
}
window.onload = init;
*/ -
nagyúr
Sziasztok!
Ezt a szignatúrát nem igazán értem, valaki esetleg el tudná nekem magyarázni?
window.ColumnWidthManager.setColumnsWidth = (function (columnWidthManager) {
return function (gridId) {
columnWidthManager.setWidths(gridId, maxWidths);
};
})(new window.ColumnWidthManager(new swh.ElementWidthProvider()));Illetve hogyan oldható meg az, hogy legyen egy újabb olyan metódus, ami a fentebbi ColumnWidthManager példányt használja?
-
martonx
veterán
-
Jim-Y
veterán
const elementWidthProvider = new swh.ElementWidthProvider();
const columnWidthManager = new window.ColumnWidthManager(elementWidthProvider);
function getColumnsWidthSetterFn(columnWidthManager) {
return function (gridId) {
columnWidthManager.setWidths(gridId, maxWidths);
};
}
// 1
window.ColumnWidthManager.setColumnsWidth = getColumnWidthSetterFn(columnWidthManager);
// 2
window.ColumnWidthManager.setColumnsWidth = (gridId) => {
columnWidthManager.setWidths(gridId, maxWidths);
}; -
topjoyy
tag
Hali!
Kezdő vagyok még JS terén és azzal a kérdéssel fordulnék hozzátok, hogy hogy lehetne azt megoldani, hogy a gombra kattintva minden kattintásnál meg változzon a background színe? Köszönöm előre is!
<!DOCTYPE html>
<html>
<body>
<head>
<style>
#p {background:red; padding:10px; display:none;}
</style>
</head>
<button onclick="my()">Katt</button>
<p id=p>Valami</p>
<script>
function my()
{
document.getElementById("p").style.display = "block";
}
</script>
</body>
</html>[ Szerkesztve ]
-
Jim-Y
veterán
válasz topjoyy #6792 üzenetére
Ez segit? https://stackoverflow.com/a/1484514
-
DNReNTi
őstag
Gondolom a function fuggveny az azt jelenti hogy egy darab fuggveny. Vagyis gondolom.
function setRandomColor() {
$("#colorpad").css("background-color", function(){
var letters = '0123456789ABCDEF';
var color = '#';
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
});
}but without you, my life is incomplete, my days are absolutely gray
-
Jim-Y
veterán
válasz topjoyy #6794 üzenetére
http://jsfiddle.net/132mzyx6/6/ Ennel egyszerubben nem nagyon lehet ezt megoldani.
-
-
topjoyy
tag
Erre gondoltam. Ez nem jQuery?
const btn = document.querySelector('.btn__change-bgColor');
const target = document.querySelector('.target-wrapper');A kattintósnál meg azt értem, hogy van egy gomb és ha rákattintok elsőre, akkor legyen mondjuk piros, ha rákattintok másodjára legyen mondjuk nagyobb és így tovább.
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Android szakmai topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Vezeték nélküli fülhallgatók
- Alapértelmezett konfiguráción sok Core CPU-nak lehet stabilitási gondja
- Autós topik
- Yettel topik
- Fejhallgató erősítő és DAC topik
- RAM topik
- Politika
- Azonnali fotós kérdések órája
- További aktív témák...