- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Samsung Galaxy S26 - szeret, nem szeret
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Huawei Watch GT Runner 2 – óra a futóra?
- Xiaomi 17 Ultra - jó az optikája
- Google Pixel topik
- Xiaomi 15T Pro - a téma nincs lezárva
- iPhone topik
-
Mobilarena
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
-
martonx
veterán
válasz
Tomi_78
#7772
üzenetére
Két dolog:
1. tanuljuk már meg végre, hogy mi a különbség a let és const között
ez a halálom, amikor valaki a legalapabb dolgot is fogalmatlanul használja.
2. nekem ez a megoldás sokkal szimpatikusabb: https://stackoverflow.com/questions/19764018/controlling-fps-with-requestanimationframe minden olyan megoldástól a hideg kiráz, ami animációval kapcsolatos és settimeout / setinterval van benne. Ezt a megoldás még kombinálnám annyival, hogy magát az animációt kiszervezném egy külön worker thread-be, mert ezekben az esetekben az a gond, hogy ha komplex az animáció / nagyon gyenge a futtató vas, akkor lehet, hogy több frame-et is át fogsz lépni, mint eredetileg tervezted. -
Rickeffe
aktív tag
válasz
Tomi_78
#7745
üzenetére
https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame
The number of callbacks is usually 60 times per second, but will generally match the display refresh rate in most web browsers as per W3C recommendation.Böngészőtöl függ.
Először végeznék egy mérést ami megadja az aktuális kb fps-t. Aztán ahhoz viszonyítanék. -
martonx
veterán
válasz
Tomi_78
#7741
üzenetére
a requestAnimation frame a képernyőfrissítéshez igazodik, nem a gép sebességéhez. Simán lehet, hogy a te gyengébb gépednek 120Hz-es kijelzője van, a másik erősebb gépnek meg 60Hz-es. Ebben az esetben nálad 120fps-t fog eredményezni a requestAnimationFrame, a másik gépen meg 60fps-t.
A SetInterval felejtős, teljesen megbízhatatlan.
requestAnimationframe-nél így tudod fixálni az fps-t, hogy mindenhol azonos sebességet adjon: https://stackoverflow.com/questions/19764018/controlling-fps-with-requestanimationframe
Nyilván fixálni csak lefelé tudod, azaz 60fps-től lefelé. -
válasz
Tomi_78
#7741
üzenetére
Szia!
A requestAnimationFrame lényege, hogy mindenhol ugyanolyan sebességgel fusson. Az, hogy ott lassabban futott vsz csak valami lokális ok miatt lehetett (pl sok tab, máshol is használta valami aktívan a grafikus drivert, vagy valami egyéb). Az is lehet, hogy nem volt lassabb, csak voltak olyan dolgok, ami miatt más volt a limitáló és amiatt tűnt lassabbnak.
írasd ki a képernyő szélére az fps-t, és látni fogod, hogy tényleg lassabb-e. -
-
-
-
válasz
Tomi_78
#7603
üzenetére
Nem ez nagyjából
setInterval(17)-tel egyenlő, de
- ha a szkripted futása több, mint 16 ms, akkor összetorlódnak az eseményeksetInterval-nál, míg arequestAnimationFramethrotlingol
- ha háttérben van a canvas, asetIntervalakkor is triggerel, míg arequestAnimationFramenem (nem eszi feleslegesen az erőforrásokat). Ezzel ellentétben a háttérben futósetIntervalszépen torlódik, és Ph-reklámokban is látható "rohanással" éri utol magát, amikor újra előtérbe kerül.
- arequestAnimationFramevisszaad egyrequestID-t, amivel könnyebb szüneteltetni az animációt, mint asetInterval-lal.
- arequestAnimationFrame-ben regisztrált callback megkapja az aktuális időt (ha van a callback függvénynek argumentuma), így nem kell a függvényben szenvedni az előállításával -
-
-
-
gary89
csendes tag
válasz
Tomi_78
#7496
üzenetére
- a szamlal function üres, nem csinál semmit sem, így undefined lesz JS oldalon a valami.
- az extra // bezavarhat html parseoláskor (bár a modern böngészők tudnak vele együtt élni)
- a return $num; okozhatja a furcsa viselkedést, ott egy ilyen kellene, hogy helyes legyen:echo 'return '. $num . ';' ;így a szamol helyes értékkel térne vissza és később nem kellene az echo $num -
válasz
Tomi_78
#7488
üzenetére
Értem.
Azért nem írja ki, mert a $num változót az if szkópján belül deklarálod.
Tegyél egy $num=0 értékadást az if elé, így elérhető lesz az ifen kívülről is.De ha rám hallgatsz, becsomagolod az egészet egy szamlal() függvénybe, ami elvégzi a kívánt műveletet, majd a végén visszaadja a $num értékét.
Ezután csak meg kell hívnod a.függvényed ahol számlálni akarsz, esetedben a javascript tagon belül, és így nem kell aggódnod a változó szkópok miatt, és a globális névteret sem szennyezed be.
Tényleg el kellene döntened, hogy user szintű vagy globális számlálót akarsz, mert a jelenlegi megvalósítás az egy globális számlálót valósít meg, és az összes usered ugyanazt a számlálót fogja növelni.
Persze, ha ez egy látogató számláló akkor ez a kívánt viselkedés.
Miért van szükséged javascriptre?
Ezt az értéket simán kiírhatnád a bodyba is PHPvel.Bocsi a hiányzó formázásért, telefonról vagyok.
-
válasz
Tomi_78
#7486
üzenetére
Mit jelent az, hogy nem működik?
Nem ír fájlba, nem számol, hibát ad, nem írja ki a JS amit szeretnél?Ha csak a kliensnek a saját számlálóját kell kezelni akkor JSsel cookieba vagy local storagebe el tudod menteni.
Ha kell a szerveren is az adat akkor marad amit csináltál, bár célszerű lenne MySQLbe tenni az adatot, illetve ez nem a PHP topik.
-
cSuwwi
senior tag
válasz
Tomi_78
#7449
üzenetére
Ha "nem erti" akkor nem huzza be a js filet (undefined lesz), eleresi ut helyes?
Ha bongeszos a cucc, akkor chromeban nyitsz egy console-t, es megnezed a net fulon egyaltalan betolti-e es 200-as valasszal, majd ha beirod a consolra hogy Howl() nem undefinedet kene adnia.
Ha react/react native vagy hasonlo alapu akkor a debuggerben latod mi a gondja.1 perc alatt osszedobhato vele egy js player: https://jsfiddle.net/h2y0zsg6/
Új hozzászólás Aktív témák
- Milyen videókártyát?
- Béta iOS-t használók topikja
- Székesfehérvár és környéke adok-veszek-beszélgetek
- iPhone-t használók OFF topikja
- Villanyszerelés
- Háztartási gépek
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- LEGO klub
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- További aktív témák...
- Motorola Edge 50 Neo 256GB,Újszerű,Dobozaval,12 hónap garanciával
- Lenovo T495 Ryzen 5 pro 3500U, 16GB RAM, 512GB SSD, jó akku, újszerű állapot, számla, garancia
- 27% - ASUS TUF Gaming VG27AQ1A IPS Monitor! 2560x1440 / 170Hz / 1ms / G-Sync / FreeSync
- LIDL akkumulátor és generátor teszter
- HP üzleti laptopok Elitebook, Probook 4-11. gen gar.
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


ez a halálom, amikor valaki a legalapabb dolgot is fogalmatlanul használja.

