Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- leslieke
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sh4d0w: StarWars: Felismerés
- sziku69: Szólánc.
- Magga: PLEX: multimédia az egész lakásban
- Mr Dini: Mindent a StreamSharkról!
- eBay-es kütyük kis pénzért
-
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
-
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
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Gigantikus fordulatot vett a GeForce RTX 50 Super sorozat törlése
- Milyen processzort vegyek?
- BOINC: compute for science
- Amlogic S905, S912 processzoros készülékek
- Kerékpárosok, bringások ide!
- Assetto Corsa Rally
- Samsung Galaxy A54 - türelemjáték
- SSD kibeszélő
- AMD CPU-k jövője - amit tudni vélünk
- További aktív témák...
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
- Bomba ár! Lenovo X1 Carbon 1st : i5-3GEN I 8GB I 240SSD I 14" FHD I mDP I Cam I W10 I Gari!
- Xiaomi Redmi 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 12 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3438, 100% Akkumulátor
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


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

