A e fa'apipi'i i totonu o se mea fa'atonutonu, e te milimili fa'amau, fa'aga'i la'au, toso fa'aoso... ma i le avea ai ma se tagata e fa'atupuina, e te le iloa se mea. O le suʻesuʻega o loʻo pikiina, mautinoa, ae seʻi vagana o loʻo e taina numera i totonu o le faʻamafanafanaga, e le o vaaia. O le tiga lea o le Gamepad API. Ua leva ona i ai mo le tele o tausaga, ma e matua malosi lava. E mafai ona e faitau fa'amau, fa'amau, fa'aoso, galuega. Ae o le tele o tagata e le pa’i i ai. Aisea? Aua e leai se tali. Leai se laulau i meafaigaluega fa'atupu. Leai se auala manino e iloa ai pe o faia e le pule le mea e te manatu ai. E pei e lele tauaso. O lena na faʻafefeina aʻu e fausia ai se mea faigaluega itiiti: Gamepad Cascade Debugger. Nai lo le va'ava'ai atu i le fa'amafanafanaga, e te maua se va'aiga ola, fegalegaleai o le pule. Oomi se mea ma e tali i luga o le lau. Ma faʻatasi ai ma CSS Cascade Layers, o sitaili e tumau faʻatulagaina, o lea e mama ai le debug. I lenei pou, o le a ou faʻaali atu ia te oe le mafuaʻaga e matua tiga ai le faʻaogaina o le faʻatonutonuina, pe faʻafefea ona fesoasoani le CSS e faʻamamāina, ma pe faʻapefea ona e fausia se faʻaaogaina vaʻaia vaʻaia mo au lava galuega.
E tusa lava pe mafai ona e faʻamauina uma, o le a vave ona e faʻamaeʻaina ile spam faʻamafanafana e le mafai ona faitau. Mo se fa'ata'ita'iga: [0,0,1,0,0,0.5,0,...] [0,0,0,0,1,0,0,...] [0,0,1,0,0,0,0,...]
E mafai ona e ta'u mai poo le a le faamau na oomi? Masalo, ae naʻo le maeʻa ona faʻafefe o ou mata ma misi ni nai mea. O lea la, leai, e le faigofie le faʻapipiʻiina pe a oʻo i le faitau tusi. Fa'afitauli 3: Leai o le Fauga E tusa lava pe e te faʻapipiʻi faʻatasi se vaʻaiga vaʻaia vave, o sitaili e mafai ona vave faʻafefe. E mafai ona felavasa'i tulaga fa'aletonu, malosi, ma debug, ma a aunoa ma se fa'atulagaga manino, o lau CSS e fa'aletonu ma faigata ona fa'alautele. CSS Cascade Layers e mafai ona fesoasoani. Latou te faʻavasegaina sitaili i "laupapa" e faʻatonuina e ala i le faʻamuamua, o lea e te tuʻu ai le finau faʻapitoa ma mate, "Aisea ua le faʻaalia ai laʻu sitaili debug?" Nai lo lena, e te tausia ni popolega eseese:
Fa'avae: Fa'atonu a le pule, foliga muamua. Gaoioiga: Fa'ailoga mo fa'amau oomi ma la'au fa'agaoioi. Debug: Fa'apipi'i mo tagata atia'e (fa'ata'ita'iga, faitau numera, ta'iala, ma isi).
Afai e tatau ona matou faʻamalamalamaina laulau i le CSS e tusa ai ma lenei, matou te maua: /* pito maualalo i le maualuga o le faamuamua */ @layer base, toaga, debug;
@mea faavae { /* ... */ }
@layer malosi { /* ... */ }
@mea fa'apipi'i { /* ... */ }
Talu ai e fa'aputu fa'aputu ta'itasi, e te iloa lava po'o fea tulafono e manumalo. O lena fa'ata'ita'iga e fa'afaigofie ai le fa'avasegaina, ae fa'amana'omia moni lava. Ua matou ufiufi le faʻafitauli (e le o vaʻaia, faʻaoga leaga) ma le auala (se faʻapipiʻi vaʻaia na fausia ma Cascade Layers). O lenei o le a tatou savalia le faagasologa o lea laasaga e fausia ai le debugger. Le Manatu Debugger O le auala pito sili ona faigofie e faʻaalia ai mea natia o le naʻo le tusi i luga o le lau. O le mea lena e fai e lenei tagata faʻapipiʻi. O ki, fa'aoso, ma joystick e maua uma ai se ata.
Oomi le A: E moli le li'o. Tu'i le la'au: O lo'o fa'ata'amilo solo le li'o. Toso le fa'aoso i le afa: E tumu le pa i le afa.
O lea e te le o sioa i le 0s ma le 1s, ae o le mea moni o loʻo vaʻavaʻai i le pule o loʻo gaoioi ola. Ioe, o le taimi lava e te amata faʻaputuina ai setete e pei o le faaletonu, oomi, debug faʻamatalaga, atonu e oʻo lava i se faiga puʻeina, o le CSS e amata ona lapopoa ma sili atu ona faigata. O i'ina e sau ai fa'aputu fa'asolo. O se faʻataʻitaʻiga faʻapipiʻiina: @mea faavae { .button { tua: #222; tuaoi-radius: 50%; lautele: 40px; maualuga: 40px; } }
@layer malosi { .button.oomi { tuaa: #0f0; /* lanumeamata susulu */ } }
@mea fa'apipi'i { .button::a uma { anotusi: attr(fa'amaumauga-taua); mata'itusi-tele: 12px; lanu: #fff; } }
E taua le fa'atonuga: fa'avae → toaga → debug.
faavae toso le pule. u'u toaga oomi setete. debug togi i luga o fa'alava.
O le malepe fa'apenei o lona uiga e te le o tauina ni taua fa'apitoa. E tofu le laulau ma lona nofoaga, ma e te iloa i taimi uma le mea e manumalo ai. Fausiaina i fafo Se'i maua muamua se mea i luga ole lau. E le manaʻomia le foliga lelei - naʻo le manaʻomia o le i ai ina ia i ai se mea tatou te galulue ai.
Gamepad Cascade Debugger
E moni lava na o pusa. E le'i fiafia lava, ae e tu'uina mai ia i tatou 'au e pu'e mulimuli ane ile CSS ma le JavaScript. Lelei, o loʻo ou faʻaogaina faʻasologa faʻasolosolo iinei aua e teu ai mea faʻapipiʻi pe a e faʻaopoopo nisi setete. O se fa'ailoga faigata lea:
/* ================================================== FA'ATAU FA'ATA'U Fa'atonu mataupu: faavae → toaga → debug ================================================== */
/* Fa'amatala le fa'asologa o le fa'asologa i luma */ @layer base, toaga, debug;
/* Laega 1: Sitaili fa'avae - foliga fa'aletonu */ @mea faavae { .button { talaaga: #333; tuaoi-radius: 50%; lautele: 70px; maualuga: 70px; fa'aaliga: fe'i; tauamiotonu-anotusi: ogatotonu; align-aitema: ogatotonu; }
.taofi { lautele: 20px; maualuga: 70px; talaaga: #333; fa'aali: poloka i totonu; } }
/* Layer 2: Fa'agaoioiga tulaga - uu ki oomi */ @layer malosi { .button.active { tuaa: #0f0; /* Lanu lanumeamata pe a oomi */ suiga: fua (1.1); /* Faatele teisi le faamau */ }
.pause.active { tuaa: #0f0; suiga: scaleY(1.1); /* Fa'aloa fa'asaga i luga pe a oomi */ } }
/* Layer 3: Debug overlays - fa'amatalaga faufau */ @mea fa'apipi'i { .button::a uma { anotusi: attr(fa'amaumauga-taua); /* Fa'aalia le tau numera */ mata'itusi-tele: 12px; lanu: #fff; } }
O le matagofie o lenei auala o le faʻavaeina taʻitasi e iai se faʻamoemoe manino. E le mafai lava ona fa'ato'ilaloina e le vaega fa'avae le malosi, ma e le mafai fo'i ona fa'amalo le debug, e tusa lava po o le a le fa'apitoa. O lenei mea e faʻaumatia ai le CSS faʻapitoa taua e masani ona faʻafefe ai meafaigaluega faʻapipiʻi. Ole taimi nei e foliga mai o loʻo nonofo i luga o se nofoaga pogisa. Fa'amaoni, e le leaga tele.
Fa'aopoopo le JavaScript Taimi JavaScript. O le mea lea e fai moni ai e le pule se mea. O le a matou fausia lenei laasaga i lea laasaga. Laasaga 1: Seti le Pulega a le Setete Muamua, matou te manaʻomia ni fesuiaiga e siaki ai le tulaga o le debugger: // ================================================== // PULEGA O LE STATE // ==================================================
tu'u tamoe = sese; // Su'e pe o lo'o gaioi le ta'avale tu'u rafId; // Teu le requestAnimationFrame ID mo le faaleaogaina
O nei fesuiaiga e pulea le faʻaogaina o le animation e faʻaauau pea ona faitau faʻaoga gamepad. Laasaga 2: Grab DOM References Le isi, matou te maua faʻamatalaga i elemene HTML uma o le a matou faʻafouina: // ================================================== // DOM ELEMENT REFERENCES // ==================================================
const btnA = document.getElementById("btn-a"); const btnB = document.getElementById("btn-b"); const btnX = document.getElementById("btn-x"); const pause1 = document.getElementById("pause1"); const pause2 = document.getElementById("pause2"); const status = document.getElementById("tulaga");
O le teuina o nei faʻamatalaga i luma e sili atu le lelei nai lo le fesiligia o le DOM i taimi uma. Laasaga 3: Faʻaopoopo le Keyboard Fallback Mo su'ega e aunoa ma se fa'atonu fa'aletino, matou te fa'afanua ki keyboard i fa'amau: // ================================================== // KEYBOARD FALLBACK (mo suʻega e aunoa ma se pule) // ==================================================
const keyMap = { "a": btnA, "b": btnB, "x": btnX, "p": [pause1, pause2] // 'p' ki e pulea uma taofi pa };
O lenei mea e mafai ai ona matou suʻeina le UI e ala i le oomiina o ki i luga o le piano. Laasaga 4: Fausia le Loop Faʻafouina Autu O iinei e tupu ai le togafiti. O lenei galuega e faʻaauau pea ma faitau le gamepad state: // ================================================== // FA'ATAU FA'ATAU O LE TA'AMEPA // ==================================================
galuega fa'afouinaGamepad() { // Maua uma ta'aloga feso'ota'i const gamepads = navigator.getGamepads(); afai (!gamepads) toe foi mai;
// Fa'aoga le ta'aloga feso'ota'i muamua const gp = gamepads[0];
afai (gp) { // Fa'afou fa'amau fa'amau e ala i le suiina o le vasega "toaga". btnA.classList.toggle("active", gp.buttons[0].oomi); btnB.classList.toggle("active", gp.buttons[1].oomi); btnX.classList.toggle("active", gp.buttons[2].oomi);
// U'u fa'amau fa'amau (fa'ailoga fa'amau 9 i le tele o fa'atonu) const pausePressed = gp.buttons[9].oomi; pause1.classList.toggle("active", pausePressed); pause2.classList.toggle("active", pausePressed);
// Fausia se lisi o faʻamau oomi mo le faʻaalia o tulaga tuu oomi = []; gp.buttons.forEach((btn, i) => { afai (btn.oomi)pressed.push("Button " + i); });
// Fa'afou fa'amatalaga tulaga pe a oomi so'o se ki afai (oomi.umi > 0) { status.textContent = "Oomiina: " + pressed.join(", "); } }
// Fa'aauau le matasele pe afai o lo'o ta'avale le debugger afai (taufetuli) { rafId = requestAnimationFrame(updateGamepad); } }
Ole auala classList.toggle() e fa'aopoopo pe aveese le vasega galue e fa'atatau pe oomi le ki, lea e fa'aoso ai a tatou sitaili o le CSS. Laasaga 5: Taulima Keyboard Events O nei mea na tupu fa'alogo e fa'asolo ai le keyboard: // ================================================== // KEYBOARD EVENT HANDLERS // ==================================================
document.addEventListener("keydown", (e) => { afai (keyMap[e.key]) { // Taulima elemene tasi pe tele afai (Array.isArray(keyMap[e.key])) { keyMap[e.key].forEach(el => el.classList.add("active")); } isi { keyMap[e.key].classList.add("active"); } status.textContent = "Ki oomi: " + e.key.toUpperCase(); } });
document.addEventListener("keyup", (e) => { afai (keyMap[e.key]) { // Ave'ese le tulaga galue pe a tatala le ki afai (Array.isArray(keyMap[e.key])) { keyMap[e.key].forEach(el => el.classList.remove("active")); } isi { keyMap[e.key].classList.remove("active"); } status.textContent = "Ki ua tatalaina: " + e.key.toUpperCase(); } });
Laasaga 6: Faʻaopoopo le Amata / Taofi Pule Mulimuli ane, matou te manaʻomia se auala e sui ai le debugger i luga ma tape: // ================================================== // TOGGLE DEBUGGER ON/OFF // ==================================================
document.getElementById("toggle").addEventListener("kiliki", () => { tamo'e = !taufetuli; // Su'e le tulaga tamo'e
afai (taufetuli) { status.textContent = "Tamu le Debugger..."; updateGamepad(); // Amata le fa'afou fa'afou } isi { status.textContent = "E le o toaga le Debugger"; cancelAnimationFrame(rafId); // Taofi le matasele } });
Ioe ioe, oomi se faamau ma e susulu. Oomi le fasilaau ma gaoioi. O lena lava. O le isi mea: tau mata'utia. O nisi taimi e te manaʻo e vaʻai numera, ae le o moli.
I lenei tulaga, e tatau ona e vaʻai:
O se fa'atonutonu faigofie i luga o le lau, Fa'amau e tali atu a'o e fegalegaleai ma i latou, ma O se faitau fa'ailoga fa'akomepiuta e fa'aalia ai fa'ailoga oomi ki.
Ina ia faʻaitiitia lenei faʻamatalaga, o se faʻataʻitaʻiga vave o le faʻatonu i luga o le lau e tali atu i le taimi moni:
O lenei, oomiina Amata Faamaumau ogalaau mea uma seia e lavea Taofi le pueina. 2. Fa'asalalauina Fa'amatalaga ile CSV/JSON A maua loa se matou ogalaau, matou te mananaʻo e teu.
Laasaga 1: Fausia le Fesoasoani Fesoasoani Muamua, matou te manaʻomia se fesoasoani fesoasoani e faʻatautaia faila faila i le masini: // ================================================== // FILE DOWNLOAD FESOASOANI // ==================================================
galuega downloadFile(igoa faila, mataupu, ituaiga = "tusitusiga / manino") { // Fausia se paʻu mai le anotusi const blob = fou Blob([anotusi], {ituaiga}); const url = URL.createObjectURL(blob);
// Fausia se fesoʻotaʻiga download le tumau ma kiliki i ai const a = document.createElement("a"); a.href = url; a.download = igoa faila; a.kiliki();
// Faʻamama le mea URL pe a uma ona sii mai setTimeout(() => URL.revokeObjectURL(url), 100); }
O lenei galuega e galue e ala i le fatuina o se Blob (binary mea tetele) mai au faʻamatalaga, faʻatupuina se URL le tumau mo ia, ma kiliki faʻapipiʻi se sootaga download. O le fa'amamāina e fa'amautinoa tatou te le fa'asalaina manatua. Laasaga 2: Taulima le JSON Export JSON e lelei atoatoa mo le faʻasaoina o le faʻatulagaga atoa o faʻamaumauga:
// ================================================== // FA'AALI'UINA E FAI JSON // ==================================================
document.getElementById("export-json").addEventListener("kiliki", () => { // Siaki pe iai se mea e fa'atau atu afai (!frames.length) { console.warn("Leai se faamaumauga e mafai ona auina atu i fafo."); toe foi mai; }
// Fausia se uta faʻatasi ma metadata ma faʻavaa fa'atonu totogi = { foafoainaI: aso fou().toISOString(), faavaa };
// La'u mai e pei ona fa'atulagaina JSON download faila( "gamepad-log.json", JSON.stringify(totogi, null, 2), "application/json" ); });
O le JSON format e faʻapipiʻiina mea uma ma faigofie ona faʻavasegaina, faʻapena lelei mo le toe utaina i totonu o meafaigaluega faʻapitoa poʻo le fefaʻasoaaʻi ma au uo. Laasaga 3: Taulima CSV Export Mo CSV auina atu i fafo, matou te manaʻomia le faʻavasegaina o faʻamaumauga faʻatulagaina i laina ma koluma:
//================================================== // FA'AALI'UINA E FAI CSV // ==================================================
document.getElementById("export-csv").addEventListener("kiliki", () => { // Siaki pe iai se mea e fa'atau atu afai (!frames.length) { console.warn("Leai se faamaumauga e mafai ona auina atu i fafo."); toe foi mai; }
// Fausia le laina ulutala CSV (koluma mo faailoga taimi, faamau uma, tu'i uma) const headerButtons = faavaa[0].buttons.map((_, i) => btn${i}); const headerAxes = fa'avaa[0].axes.map((_, i) => axis${i}); const header = ["t", ...headerButtons, ...headerAxes].join(",") + "\n";
// Fausia laina faʻamaumauga CSV laina const = frames.map(f => { const btnVals = f.buttons.map(b => b.value); toe foi [f.t, ...btnVals, ...f.axes].join(","); }).join("\n");
// La'u mai ile CSV downloadFile("gamepad-log.csv", ulutala + laina, "text/csv"); });
O le CSV e lelei tele mo su'esu'ega o fa'amaumauga aua e tatala sa'o i Excel po'o Google Sheets, fa'atagaina oe e fai siata, fa'amama fa'amaumauga, po'o le va'ai ata. I le taimi nei o loʻo i ai faʻamau faʻatau atu, o le a e vaʻai i ni filifiliga fou se lua i luga o le laulau: Faʻasalalau atu le JSON ma le Faʻasalalau CSV. E manaia le JSON pe afai e te manaʻo e toe togi le ogalaau mata i totonu o au meafaigaluega faʻapipiʻi pe faʻataʻamilo i le fausaga. O le CSV, i le isi itu, e tatala saʻo i Excel poʻo Google Sheets ina ia mafai ai ona e siata, faamama, pe faʻatusatusa mea e fai. O le ata o lo'o i lalo o lo'o fa'aalia ai foliga o le laulau i na fa'atonuga fa'aopoopo.
3. Snapshot System O nisi taimi e te le manaʻomia se puʻeina atoa, naʻo se "ata vave" o setete faʻaoga. O i'ina e fesoasoani ai le button Take Snapshot.
Ma le JavaScript:
// ================================================== // PUE UPU // ==================================================
document.getElementById("snapshot").addEventListener("kiliki", () => { // Maua uma ta'aloga feso'ota'i const pads = navigator.getGamepads(); const activePads = [];
// Su'e ma pu'e le tulaga o ta'aloga ta'itasi ta'itasi mo (const gp of pads) { afai (!gp) faaauau; // Fa'ase'e avanoa avanoa
activePads.push({ id: gp.id, // igoa Pule/fa'ata'ita'iga faailoga taimi: performance.now(), faamau: gp.buttons.map(b => ({ fetaomi: b.oomi, taua: b.taua })), matau: [...gp.axes] }); }
// Siaki pe na maua ni gamepads afai (!activePads.length) { console.warn("Leai ni ta'aloga e feso'ota'i mo ata."); alert("Leai se pule na iloa!"); toe foi mai; }
// Fa'amau ma logo le tagata fa'aoga console.log("Snapshot:", activePads); mataala(Pu'e ata! Pu'e ${activePads.length} pule(s).); });
O ata e fa'amalo ai le tulaga tonu o lau pule i le taimi e tasi. 4. Ghost Input Replay O le taimi nei mo le mea malie: toe ta'alo aitu. O le mea lea e ave ai se ogalaau ma toe ta'alo i tua e peisea'i o lo'o fa'aogaina e se tagata ta'aalo le pule.
JavaScript mo le toe ta'alo: // ================================================== // GHOST REPLAY // ==================================================
document.getElementById("replay").addEventListener("kiliki", () => { // Ia mautinoa o loʻo i ai sa matou lipine e toe taʻalo afai (!frames.length) { alert("Leai se lipine e toe ta'alo!"); toe foi mai; }
console.log("Amata le toe ta'alo aitu...");
// Su'e taimi mo le toe fa'asa'o ia amataTaimi = performance.now(); tu'u frameIndex = 0;
// Toe ta'alo le fa'afiafiaga laasaga galuega() { const nei = performance.now(); const elapsed = nei - amataTaimi;
// Fa'agasolo uma fa'avaa sa tatau ona tupu i le taimi nei
a'o (frameIndex // Faʻafou le UI faʻatasi ma le faʻamaufaʻamau o setete
btnA.classList.toggle("active", frame.buttons[0].oomi);
btnB.classList.toggle("active", frame.buttons[1].oomi);
btnX.classList.toggle("active", frame.buttons[2].oomi); // Fa'afou fa'aaliga tulaga
tuu oomi = [];
frame.buttons.forEach((btn, i) => {
if (btn.pressed) pressed.push("Button " + i);
});
afai (oomi.umi > 0) {
status.textContent = "Atu: " + pressed.join(", ");
} frameIndex++;
} // Fa'aauau le fa'aoga pe a tele fa'avaa
afai (frameIndex // Amata le toe fai
laa();
}); Ina ia faʻapipiʻi atili lima-i luga, na ou faʻaopoopoina se toe taʻalo aitu. A maeʻa ona e faʻamauina se sauniga, e mafai ona e toe taʻalo ma matamata i le UI o loʻo faʻatinoina, toetoe lava pei o se tagata taʻavale o loʻo taʻavale le papa. O loʻo faʻaalia se faʻamau fou Replay Ghost i le laulau mo lenei. Ta'i le Fa'amaumauga, fa'aoso fa'atasi ma le pule, taofi, toe ta'alo. O le UI e na o le faʻaalia o mea uma na e faia, pei o se aitu e mulimuli i au mea e fai.
Aisea e faalavelave ai i nei mea faaopoopo? O le fa'amauina/fa'asalalauina e fa'afaigofie ai mo tagata su'e ona fa'aali tonu le mea na tupu.
O ata e malolo i sina taimi, e aoga tele pe a e tuliloaina ni mea sese.
Ghost replay e lelei tele mo aʻoaʻoga, siaki avanoa, poʻo le naʻo le faʻatusatusaina o seti faʻatonutonu i autafa. I le taimi nei, e le naʻo se faʻaaliga manino, ae o se mea e mafai ona e faʻaaogaina.
Tulaga Fa'aoga a le Lalolagi Moni
O lea ua matou maua lenei mea faʻapipiʻi e mafai ona tele mea. O lo'o fa'aalia ai fa'aoga ola, fa'amaumau ogalaau, fa'aulu atu i fafo, ma toe fa'afo'i mea. Ae o le fesili moni lava: o ai moni e popole? O ai e aoga lenei mea?
Ta'aloga atia'e
O pule o se vaega o le galuega, ae faʻapipiʻiina? E masani lava o se tiga. Vaʻai faalemafaufau o loʻo e suʻeina se taʻaloga fusuaga, pei o ↓ → + punch. Nai lo le tatalo, e te oomiina faalua i le auala lava lea e tasi, e te pueina faatasi, ma toe ta. Ua uma. Pe e te fesuia'i ogalaau JSON ma se au e siaki pe o tali tutusa lau code multiplayer i luga o la latou masini. E tele naua.
Fa'atonu Fa'atonu
O lenei mea e latalata i loʻu loto. E le o tagata uma e taʻalo ma se "standard" pule. E lafoa'i ese e le au fa'atonu fa'ailoga fa'ailoga uiga ese i nisi taimi. Faatasi ai ma lenei meafaigaluega, e mafai ona e iloa tonu le mea o loʻo tupu. Faiaoga, tagata su'esu'e, po'o ai lava. E mafai ona latou pu'eina ogalaau, fa'atusatusa i latou, pe toe ta'alo mea fa'aoga i autafa. Ua fa'afuase'i ona iloa mai mea e le o vaaia.
Su'ega Fa'amautinoaga Tulaga
E masani ona tusi e le au suʻega ni faʻamatalaga e pei o le "Na ou faʻapipiʻi faʻamau iinei ma ua gau." Le fesoasoani tele. Lenei? E mafai ona latou pu'eina sa'o lomitusi, auina atu i fafo le ogalaau, ma lafo ese. Leai se taumate.
Faiaoga
Afai o loʻo e faia ni aʻoaʻoga poʻo YouTube vids, o le ghost replay o le auro. E mafai ona e fai atu, "O le mea lenei na ou faia i le pule," aʻo faʻaalia e le UI o loʻo tupu. E fa'amanino atili ai fa'amatalaga.
I tua atu o Taaloga
Ma ioe, e le na o taaloga. Ua fa'aogaina e tagata fa'atonu mo robots, galuega fa'atino, ma feso'ota'iga avanoa. Tusa lava mataupu i taimi uma: o le a le mea o loʻo vaʻaia e le browser? Faatasi ai ma lenei mea, e te le tau mateina.
Fa'ai'uga
O le fa'apipi'iina o se mea e fa'aogaina e pulea e pei lava o le lele tauaso. E le pei o le DOM poʻo le CSS, e leai se tagata asiasi faʻapipiʻiina mo taʻaloga; ua na o numera mataʻutia i totonu o le faʻamafanafanaga, e faigofie ona leiloa i le pisa.
Faatasi ai ma ni nai selau laina o HTML, CSS, ma le JavaScript, na matou fausia se mea ese: Ose fa'a-fa'amama va'aia e fa'aalia ai mea e le va'aia.
O se faiga CSS fa'apipi'i e fa'atumauina le UI mama ma fa'afefe.
Se seti o faʻaleleia (puʻeina, auina atu i fafo, ata, toe taʻalo aitu) e siitia ai mai le demo i le atinaʻe meafaigaluega. O lenei poloketi e faʻaalia ai le mamao e mafai ona e alu ai e ala i le faʻafefiloi o le mana o le Upega Tafaʻilagi ma sina fatufatuga i CSS Cascade Layers.
O le meafaigaluega na ou faʻamatalaina i lona atoaga o le open-source. E mafai ona e faʻapipiʻi le GitHub repo ma faʻataʻitaʻi mo oe lava.
Ae sili atu ona taua, e mafai ona e faia oe lava. Fa'aopoopo a oe lava fa'avae. Fausia sau lava manatu toe fai. Fa'atasi ma lau fa'ata'ita'iga ta'aloga. Pe faʻaaoga foi i auala ou te leʻi mafaufauina. Mo aʻoaʻoga, faʻaogaina, poʻo le auiliiliga o faʻamaumauga.
I le faaiuga o le aso, e le naʻo le faʻaogaina o gamepads. E uiga i le susuluina o se moli i luga o mea natia, ma tuʻuina atu i le au atinaʻe le talitonuga e galulue faʻatasi ma meafaigaluega e leʻo atoatoa le taliaina e le upega tafaʻilagi.
O lea, faʻapipiʻi lau pule, tatala lau faatonu, ma amata faʻataʻitaʻi. Atonu e te ofo i mea e mafai ona ausia moni e lau su'esu'ega ma lau CSS.