Jon muchas gracias por subir este contenido tan completo en tiempos de pandemia, con tanta gente en desempleo y agobiada por la salud , la falta de libertad y el hundimiento económico , tú gente como tú sois un faro y un ejemplo. Un cordial saludo desde España.
@jonmircha3 жыл бұрын
🤗💛
@syrax-lk2 жыл бұрын
Que buen video por dios .Profe , decidí dejar mi trabajo porque ya era insostenible el tema económico. Vengo desde Marzo con su curso (con 4hs diarias para programar) y recién en Julio me volqué totalmente a JS .La idea es que con algunos pocos ahorros y ayuda de mi novia
@jonmircha2 жыл бұрын
👋🏻😉 Mucho ánimo
@Rogeltelo-tw8wj Жыл бұрын
Hola como te ah ido, yo también deje mi trabajo para apostarle a la programación porque ya estaba harto, claro que nuestras situaciones no son las mismas. Apenas hace unos meses empezé y me está costando horrores, pero no lo voy a aflojar hasta conseguir mi primer trabajo de esto.
@j.b.67884 ай бұрын
Clase magistral, icreíble. Eres el mejor, Jon. Tu cara debe aparecer en el diccionario cuando se busque la palabra docente 👏
@jonmircha4 ай бұрын
👋🏻😉
@MATOCLANES4 жыл бұрын
Hola Jon Mircha, soy un nuub en tema de programación, pero desde que encontré tu canal a parte de entretenido he aprendido bastante y obviamente he visto todos tus vídeos de JavaScript hasta este. Y espero ver pronto los demás videos que tienes, muchas gracias por tu tiempo y dedicación Saludos desde Chile
@jonmircha4 жыл бұрын
De nada, saludos desde México, comparte para llegar a más gente
@soyjaider8996 Жыл бұрын
EL mejor curso, siempre me reto a hacer algo nuevo en cada uno de tus videos, y en este video, busque la manera de activar y desactivar el boton del menu hamburguesa con un shortcut, los reto a que lo hagan tambien.
@jonmircha Жыл бұрын
👋🏻😉
@johnherrera59133 жыл бұрын
Master Si hay algo que tengo que agradecer es el buen contenido, un curso de alto nivel muchisismas gracias y que sigan los exitos.
@jonmircha3 жыл бұрын
😉🙌🏻
@Wiiiiizard2 жыл бұрын
🧙♂Muchas gracias, muy bueno el curso!!!
@jonmircha2 жыл бұрын
😉👋🏻
@flaca7342 Жыл бұрын
Hola, buen día! Soy muy novata con javascript, pero lo que hice fue agregar un manejador de eventos para el resize del window porque la pelotita me quedaba afuera cuando la ventana estaba al 100% y luego la achicaba. Así que implementé este manejador de eventos que trae la pelotita al centro. Seguro se puede hacer mejor. /** asociar el manejador al evento de la ventana */ window.addEventListener("resize", (e) => { ballOnWindowResize(e, ".ball"); }); /** manejador del evento */ export function ballOnWindowResize(e, ballSelector) { if (e.type === "resize") { const $bola = d.querySelector(ballSelector); x = 0; y = 0; $bola.style.transform = `translate(${x * 10}px, ${y * 10}px)`; } }
@jonmircha Жыл бұрын
👍🏻
@carlosjavierorozco8418 Жыл бұрын
Me encanto este ejercicio de colisiones y mucho hype por el de countdown! mil gracias vale oro todo tu contenido!
@jonmircha Жыл бұрын
😉👋🏻
@moosesg1049 Жыл бұрын
Sin duda es el curso mas completo que eh visto de JS gracias profe por tomarse el tiempo de explicar estos metodos con particas muy geniales como esta
@jonmircha Жыл бұрын
👋🏻😉
@instintoimagen2 жыл бұрын
Este es el mejor #curso de #javascript
@jonmircha2 жыл бұрын
🥰🙌🏻
@GerentedeSistemas3 жыл бұрын
Excelente video, no soy un experto en desarrollo de juegos, pero recuerdo haber programado durante mi época de estudiantes juegos como Tic Tac, Puzzle, Snake, Pong y Pacman, en c++
@braianrico44223 жыл бұрын
Genial, es lo único que se puede decir respecto a todo tu contenido. Gracias a ti me encuentro más motivado cada día, anteriormente quería incursionar en este mundo por negocio, pero tu con tu manera de mostrar todo y tu pasión me has cambiado la manera de pensar y cada día visualizo los videos con la pasión que me faltaba. Mil gracias de verdad... 🧙♂️🧙♂️🧙♂️
@jonmircha3 жыл бұрын
De nada 🙌🏻🙌🏻🙌🏻
@Ni_idea_de_tecnologia11 ай бұрын
Que gran ejercicio. yo he notado que a veces la pelota se sale un poco del cuadrado por lo que he introducido un else if para reducir el número de pixels por salto de la siguiente forma: case 37: if(limitsBall.left>limitsStage.left&&(limitsBall.left-limitsStage.left>30)){ x--; e.preventDefault(); } else if(limitsBall.left-limitsStage.left>=1){ x=x-0.2; e.preventDefault(); } break; Muichas gracias Sr. Mircha
@rutita3 жыл бұрын
🍎 Gracias por la paciencia para enseñar, los que somos primerizos en el mundo de la programación lo valoramos mucho. Un abrazo 🍎 (Como niña con juguete nuevo haciendo shortcuts 😄)
@jonmircha3 жыл бұрын
jejejeje haz uno para imprimir Manzanitas 🍎🤭
@rutita3 жыл бұрын
@@jonmircha buena idea!! Lo voy a hacer !!😄🍎🍏
@tongastonga2210 ай бұрын
Muchas gracias Jon!!
@jonmircha10 ай бұрын
Con gusto👋🏻😉
@zeta-index4 жыл бұрын
Que buen curso. Está genial. Mil gracias al profesor. Y para que no se desborde la bola del contenedor, lo que hice fue al final de cada if del switch sumar o restar dependiendo del caso el mismo valor por el cual se multiplicó los valores de X y Y. Jon no sé si ésto es eficiente o nó, pero funcionó. Aquí una parte del código. break; case 40: if(limitsBall.bottom
@vinilsign3 жыл бұрын
funciona
@Bisson1563 жыл бұрын
Hola Jon! Muchas gracias por darnos tanto contenido de calidad. Saludos!
@jonmircha3 жыл бұрын
Con mucho gusto
@AngelSalazar-uf5fk3 жыл бұрын
Jon me encanta ! yo lo hice ami manera y funciona muy bien, pero me encanta que siempre tengas cosas con que sorprender
@AngelSalazar-uf5fk3 жыл бұрын
Pero yo lo hice cómo dicen en MDN con canvas, de igual manera es lo mismo
@jonmircha3 жыл бұрын
Muchas gracias!!
@juansebastian27212 жыл бұрын
Gracias Jon, estoy aprendiendo mucho; creo apenas termine este empezare con el de Figma.
@jonmircha2 жыл бұрын
😉👏🏻
@kikemadrigalr4 жыл бұрын
Hola, saludos. Ok este vídeo me dejo claro que no estaba tan perdido a la hora de hacer mi ejercicio que lo subí ayer en el vídeo anterior, utilice getBoundingClientRect() pero tu forma usarlo para obtener los limites creo que facilita un poco las cosas. yo lo de ese objeto obtuve las medidas de ambos elementos, hice un calculo para evitar que se saliera la bola. No utilice la colisión. Pero un día mas en el que me enseñas algo nuevo. Ademas de que para evitar el tema de cancelar el scroll con las flechas, lo que hice fue, tener como un estado desactivado del esenario y la bola. Es decir que asigno el evento keydown solo cuando se activa el escenario clikeandolo.
@jonmircha4 жыл бұрын
Bien :)
@josefabianbeltranmeza69143 жыл бұрын
Super Jon, muchas pero muchas gracias. Siempre se aprende algo nuevo con cada video de este y todos tus cursos.
@jonmircha3 жыл бұрын
🧔✌
@brianalexisalmada65223 жыл бұрын
Otro video que se suma a la colección de los "Excelentes videos" :D Yo para solucionar lo del desborde (después de probar con Math.round() y otras cuentas locas) lo que hice fue en lugar de mover x/y * 10, lo hice por 9 jeje. De esa forma, la cuenta de pixeles da exacto para que se frene en el borde del Stage.
@jonmircha3 жыл бұрын
😉👍🏻
@MrRampengu2 жыл бұрын
es verdad con 9 se queda dentro del limite o:
@vanhellsing30292 жыл бұрын
Ö
@EducacionCultura1992 Жыл бұрын
Gracias profe
@jonmircha Жыл бұрын
Con mucho gusto
@camilogomez52434 жыл бұрын
Me toco hacer este ejercicio por medio de un canvas , pero me encanto tu explicacion ..muchas gracias por estos ejercicios... aunque parecen sencillos siempre hay que buscar y se termina aprendiendo bastante!!.
@jonmircha4 жыл бұрын
:)
@juanestebanvelezloaiza61442 жыл бұрын
Hola compañeros, les comparto mi solución: codepen.io/demonqilin/pen/MWrMzGQ En lugar, de que la pelota se detuviera, hice que cuando llegara al limite de la cara traspasara al otro lado. Agradeceria el feedback, y ahora sí a ver este video del todopoderoso Jon MirCha.
@jonmircha2 жыл бұрын
😀👍🏻
@emanuelr98153 жыл бұрын
Una gran clase profe, no podría esperar menos de usted!!!
@jonmircha3 жыл бұрын
Gracias por tu apoyo
@victormaldonado62694 жыл бұрын
Excelente ejercicio, muchas ¡gracias! Tuve que consultar MDN, W3schools y muchas fuentes, usé getComputedStyle() getPropertyValue, parseInt() para calcular la bendita dimensión de la caja y luego .style.setProperty para cambiar los valores de left y top, usé un div (con position: relative) en lugar de article (con position:flex), no sabía que evento usar, ni los nombres de las teclas. Duré mas de un día hasta que lo logré. Luego veo la solución y ya sabiendo de un par de funciones que usó que me resuelven la mitad del tema, se reduce una buena parte del código. Además en 5 minutos me resuelve todo un mar de dudas y claro surgen otras. Por ejemplo, como el EventListener es global y si si el uso de las teclas de flechas me sirve para hacer cosas en diferentes elementos de la página, pero quiero que actúe solo sobre el que yo indique ¿cómo evito que lo haga sobre los demás?
@benjaminquattrocchi98412 жыл бұрын
Victor tenes el codigo para verlo, y asi ayudarme? yo estoy intentando hacerlo como vos, pero quede trabado en una parte
@A.RadelM.F.18 күн бұрын
Hola, profesor. Actualmente, mientras estuve haciendo este ejercicio, en la documentación de MDN se especifica que el keyCode ya está depreciado y se desaconseja su uso. He visto que se usa el code o el key. En relación a la pelotita que sobresale, me parece que no es por los decimales, sino por los 10px de movimiento y los px's faltantes para que los límites se topen. Es decir, Si faltan 7 px para que los límites se encuentren, el if va a validar a true (para cualquiera de los 4 casos: up, left, down & right) y va a efectuar una traslación de 10px, entonces van a sobresalir 3px por fuera del borde.
@fadelsalem41722 жыл бұрын
Muchas gracias Jon. Estamos aprediendo mas y mas. "Tera" likes. He solucionado el problema de la salida del balón de arriba y abajo, ajustando los movimientos asi: if(limitsBall.top > limitsStage.top + 10) y-- if(limitsBall.bottom < limitsStage.bottom - 10) y++ Un saludo
@jonmircha2 жыл бұрын
😉👍🏻
@addevmoises3 жыл бұрын
No entendí mucho este ejercicio pero cuando vea las transformaciones en tu canal, retomaré este ejercicio.
@jonmircha3 жыл бұрын
;) En este video puedes aprender animaciones, transiciones y transformaciones ;) kzbin.info/www/bejne/r5ucZHSNjZWDlc0
@addevmoises3 жыл бұрын
@@jonmircha ooh muchas gracias lo veré para aprender las bases
@zobeklol78523 жыл бұрын
developer.mozilla.org/en-US/docs/Web/CSS/transform aca hay una explicación rapida de las transformaciones
@NonsenseIsOver4 жыл бұрын
Sos fantástico profe!
@hernangarcia773 жыл бұрын
Magistral tu clase jon. Jodete phaser, el escenario de jon es responsivo ;)
@jonmircha3 жыл бұрын
jajaja
@timawid Жыл бұрын
Lo de mover la pelota estuvo un poco difícil pero estoy seguro de que lo dominaré
@jonmircha Жыл бұрын
👋🏻😉
@AlexComanKreitos13 Жыл бұрын
Hola Jon, que tal como estas? Muy interesante el video, lo he intentado en mi pc y es muy entretenido, he intentado crear una botonera para poder usar desde los mobiles la bolita, pero no consigo añadir los keyCodes a los botones, es decir que cuando le de click al botón haga la misma function de las flechas en el teclado. Me podrías echar un cable con algún tip? Muchísimas gracias de antemano, tienes muy buen contenido y es de muchísima ayuda!!
@miguelantonioescuderoperal74853 жыл бұрын
Maestro JonMircha gracias por este tema, nuevos metodos aprendidos :)
@jonmircha3 жыл бұрын
Con mucho gusto
@carlesbautista82933 жыл бұрын
Muchas Gracias Jonathan por tu tiempo!! :), como puedo hacer que vaya en diagonal la bola? con keyPress y ArrowUp+ArrowLeft no me funciona, gracias!!
@jonmircha3 жыл бұрын
Tendrías que detectar la pulsación de ambas teclas y aplicar el translate en X y Y simultáneamente
@Juankybi4 жыл бұрын
muy bien, un codigo o solucion sencilla, e inteligente
@stiven_as022 жыл бұрын
Gratitud Profe Mircha, tan pronto me sea posible le agradeceré por tanto aporte, el mejor contenido de programación que se puede encontrar. Tengo una pequeña inquietud con el intento de comprender un poco mejor. Leyendo el codigo, en este ejercicio sumerce crea el listener keydown en el index.js y importa la función. Y yo probando importe la función en el listener DOMContentLoaded en index.js, y agrege el listener en keyDown en el teclado.js. Ambas por lo que noto funcionan igual, pero me queda la incertidumbre si tienen algun significado relevante la manera en que se elaboran las 2 versiones..?
@jonmircha2 жыл бұрын
Simplemente trato de que todo lo que haga funcionar en mi módulo quede empaquetado en el archivo correspondiente, pero amnas formas funcionan ;)
@stiven_as022 жыл бұрын
@@jonmircha A okey, llegue a pensar que se debía ser prudente cuando colgar o no en el DOMcontent, gratitud por la contesta...!!!🤜
@santi352 жыл бұрын
Jon! Buenas, este curso esta cada vez mejor…..quería hacerte solo una consulta porque no se coloca todas las funciones dentro del addEventListener del DOMContentLoaded?
@jonmircha2 жыл бұрын
🤔 en qué parte del video?
@rafaelchiguil81684 жыл бұрын
Espero que veas Intersection Observer. A ver si nos podrías enseñar algunos trucos. Saludos.
@jonmircha4 жыл бұрын
Hay dos ejercicios más adelante sobre intersection observer
@jesussantos29342 жыл бұрын
Estoy un poco confundido con la etiqueta article, no se de quien esta heredando el width? Pensé que seria del section, pero lo consulte y tienen valores diferentes.
@rafaelrodriguezcalvente84824 жыл бұрын
Buenas Jonathan, desde que conocí tu canal todos los días saco un rato para continuar tanto con este curso como con otros como los de Node.js o el de Responsive Design. Quería preguntarte sobre un tema y es que me encuentro a muchos desarrolladores web profesionales que me dicen que hoy en día no es necesario conocer en profundidad HTML + CSS porque la gran mayoría de empresas usan para sus proyectos frameworks como Bootstrap, Foundation, etc... ¿ Qué opinas al respecto? Un saludo desde España!!
@jonmircha4 жыл бұрын
Es verdad que se ocupan mucho, yo mismo ocupo Bootstrap y Materialize CSS, pero el conocimiento que tengo de HTML y CSS me permite sacarle un provecho extra a estas herramientas, incluso a veces hackeo su código y modifico su comportamiento, justo al gran conocimiento que tengo de HTML y CSS
@rafaelrodriguezcalvente84824 жыл бұрын
@@jonmircha Genial, muchas gracias !! ☺️
@elcaosdejosh66223 жыл бұрын
Cuando terminé de resolver el ejercicio de eventos del teclado (con metodos muy diferentes y debo admitir que no sabia del getBoundingClientRect eso me habría ahorrado un dolor de cabeza jajaja) esa noche me fui a dormir y pensé "Estaría perrón hacer una cuenta regresiva" y justo el siguiente ejercicio es realizarla JAJAJAJA que curiosa es la vida
@jonmircha3 жыл бұрын
😉👍🏻
@matiasromera3303 жыл бұрын
muy buen video che!
@jonmircha3 жыл бұрын
🤙
@normanejm2 жыл бұрын
Profe, tocando éste tema. Y si hace algunos vídeos o cursos (Básicos) de crear videojuegos con html?? Algo simple, es como para tener una idea de lo que puede llegar a ser... Como una especie de SuperMario Bros. Algo así como plataformas...
@jonmircha2 жыл бұрын
jejejeje 🤫 estoy preparando algo de eso para el próximo año, por que estoy dando clases en una universidad orientada al desarrollo de videojuegos
@normanejm2 жыл бұрын
@@jonmircha 😯❤️🤩 Genial profe!!! Espero que también le éste yendo bien dando clases en la U. 💪
@helipalacio8772 Жыл бұрын
👏👏👏 🙏🙏🙏
@jonmircha Жыл бұрын
👋🏻😉
@helipalacio8772 Жыл бұрын
👏🏻👏🏻👏🏻 🙏🏻🙏🏻🙏🏻
@jonmircha Жыл бұрын
😉👋🏻
@fd21954 жыл бұрын
profe!! como es que puedo buscar que metodos existen, porque al igual que getBoundingClienteRect hay varios que no conozco y no se que extension recomiendan para el autocompletado de metodos de js
@jonmircha4 жыл бұрын
VE a la documentación de MDN
@ginesnm70183 жыл бұрын
Muy buen curso!! que raro se hace la y llamarla ye, en España decimos y griega jeje. Un saludo y felices Reyes Magos
@jonmircha3 жыл бұрын
jejeje acá también le decimos i latina e y griega, pero también le decimos ye :P
@braianrico44223 жыл бұрын
Es como #gatito jajajaj Jamás había escuchado ese termino, y ya lo utilizo frecuentemente y nadie me entiende jajajja
@jorgequintero47493 жыл бұрын
Hola voy por este episodio y pues una duda ya que hasta el día de hoy investigue y el keyCode e which ya los rayaron en MDZ que alternativa puede haber!!
@jonmircha3 жыл бұрын
key
@jorgequintero47493 жыл бұрын
@@jonmircha Gracias el key me trae el nombre de la tecla que presiono solamente ? ensaye con code tambien pero es similar
@IsaacGarcia-qq8oq2 жыл бұрын
Hola profe como se podría hacer para que el desplazamiento del scroll solo se desactive en el stage? ya que no tiene target, talvez asignar el evento directamente al section y no al document ?( no se me ocurre mas que eso
@jonmircha2 жыл бұрын
Podría ser 😉
@adriel81522 жыл бұрын
Yo hice que al dar clic al stage se desactive el scroll del document y las flechas tomen el control de la pelota. Para activar de nuevo el scroll del document das clic fuera del stage o a un botón de X que puse
@andresarturomorenohurtado83864 жыл бұрын
Hola mirchar, tengo una duda el punto y coma desde tu perspectiva es mejor ponerla o no ponerla?
@jonmircha4 жыл бұрын
Es una buena práctica y si no sabes cuando debe usarse o no, mejor si ponla
@federicoraulmaciasaparicio13394 жыл бұрын
Mi experiencia es que justamente cuando a uno se le olvida es justamente cuando es necesario el punto y coma. Así que yo prefiero ponerlo siempre, por si acaso...
@user87546 Жыл бұрын
Siempre trato de ponerla por si a caso. No olvides usar proteccion
@ronaldm.r4 жыл бұрын
Mmmm tengo una traba o algo asi... usé moment.js para lo de la fecha pero tuve que hacer los calculos de conversiones y todo pero resulta que el tiempo ya sea hora, minutos, segundos me los da super largos, o sea, son correctos pero me son largos por la diferencia que hay entre las fechas, que me recomendaria hacer? intenté quitar unos cuantos numeros con los string pero se me ha hecho imposible
@Juicio872 жыл бұрын
Si en vez de multiplicar por 10 las variables "x" e "y" las sumo el primer movimiento lo hace hacia la derecha independientemente de la tecla que pulse 🤔 Yo este ejercicio lo intenté resolver con el getBoundingClientRect() pero no me dejaba cambiar los valores de esas propiedades
@jonmircha2 жыл бұрын
😮
@matiasmaidana2248 Жыл бұрын
El Visual Studio Code me dice que la propiedad keyCode está obsoleta. ¿Qué propiedad la reemplazó?
@paulpaucarb4 жыл бұрын
#jonmircha
@helipalacio87722 ай бұрын
👨
@jurrrgenOF3 жыл бұрын
33:57 perfecto para hacer una bomba jajaj
@jonmircha3 жыл бұрын
🤣🤭
@RoyArrascaeta4 жыл бұрын
Hola Jon, de qué manera podríamos hacer para que el movimiento de la pelota solo funcione si situamos el ratón sobre el escenario, o si le hacemos click a él? Habría que asignar el evento "click" al article #stage y dentro mandarle toda la función "moveBall"??
@jonmircha4 жыл бұрын
Sería cuestión de probarlo pero tú lógica me suena correcta, prueba y nos cuentas :)
@luchogrz273 Жыл бұрын
Excelente video. Solo tengo un problema que no logro superar. Cuando quiero que la pelota colisione, luego de escribir el codigo y probarlo me aparece $ball.getBoundingClientReact() is not a function. Minuciosamente trate de ver si el codigo estaba mal escrito y nada. Todo funciona hasta que coloco las variables limitsBall y limitsStage. Gracias!
@jonmircha Жыл бұрын
🤔
@luchogrz273 Жыл бұрын
@@jonmircha escribi getBoundingClientReact en vez de getBoundingClientRect JAJA
@heimancastro1954 Жыл бұрын
🤓🤓🤓🤓🤓🤓 la bolita la bolita
@thejb99023 жыл бұрын
Me siento frustradoooo... Si tan solo investigara un poco mas... Pero a lo que llegue a investigar estaba realizando mi forma con el canvas. pero solo llegue a realizar un pequeño lapiz con las teclas del evento. asi poder dibujar en el stage, pero me encanto esta forma. nada que ver con el canvas
@jonmircha2 жыл бұрын
🤓👍🏻
@yovanyescobarrojas20413 жыл бұрын
hola profe mircha , tengo un problema el ejercicio lo estoy realizando a mi manera , tengo un problema cuando uso la propiedad : getBoundingClientRect(), la lanzo por consola me arroja los dato pero cuando muevo la pelotita , no cambian los valores left y right se quedan estaticos , yo no estoy utilizando la propiedad translate , simplemente le di position reative ala pelottita en el css y con js lo muevo en las propiedades top , left, right etc. muchas gracias por su comprensión
@xavicode34363 жыл бұрын
si lo has pasado a una variable no te arroja los cambios, en cambio si directamente le pones el metodo al element exempl: console.log($ballGame.getBoundingClientRect().right) ; console.log($containerGame.getBoundingClientRect().right); en este caso veras los cambios en consola. Me paso lo mismo que a ti
@user87546 Жыл бұрын
4:00 alguien se acuerda para que era el default?
@paulamainini67492 жыл бұрын
Jon gracias por el video. Hice el mismo código que vos pero cuando muevo la pelotita se mueve una sola vez para cada lado, como si solo admitiera 4 posiciones de la bola, como si no quedara guardado el movimiento anterior, pero el código es el mismo. Alguien sabe que puede estar pasando?
@jonmircha2 жыл бұрын
Sube tu código a un codesandbox, así platicado ni como ayudarte
@fadelsalem41722 жыл бұрын
Tenia el mismo problema. Prueba donde tienes declarados los const x= 0, y= 0, deben estar antes de la function. Un saludo
@user87546 Жыл бұрын
getBoundingClientRect no es un metodo que venga del objeto window. No entiendo de donde salen estos métodos
@lesbaixllobregat5664 Жыл бұрын
Al momento de hacer el ensayo con las flechas me sale este error: Uncaught TypeError: Cannot read properties of null (reading 'style') Haciendo énfasis aquí: $ball.style.transform =`translate(${x * 10}px, ${y * 10}px)`; Pero está bien la sintáxis, no entiendo porqué, ojalá pueda ayudarme.
@brandonmunozmazariegos1555 Жыл бұрын
declarate tus variables de x,y inicializadas en 0?
@compaluis51 Жыл бұрын
Mismo caso, me da el mismo error
@andrespaez1301 Жыл бұрын
Buen día. Necesito de su ayuda... He efectuado el mismo proceso y paso a paso, sin embargo al momento de ensayar el movimiento, la consola me muestra un error y no he podido entender cual es el error, me muestra esto la consola: $ball.style.transform = `translate(${x * 10}px,${y * 10}px)`; Haciendo enfasis en que el error es style pero no entiendo el por qué.
@jonmircha Жыл бұрын
😮
@lesbaixllobregat5664 Жыл бұрын
Hola amigo, tengo actualmente el mismo errior, cómo lo resolviste?
@compaluis51 Жыл бұрын
Tengo el mismo error Andrés, lograste corregirlo ?
@andrespaez1301 Жыл бұрын
@@compaluis51 const d = document; // CAP 84 ↓↓↓ export function shortcuts(e) { if (e.key === "q" && e.altKey) { alert(`Haz lanzado una alerta con el teclado`); }; if (e.key === "c" && e.altKey) { confirm(`Haz lanzado una confirmación con el teclado`); }; if (e.key === "p" && e.altKey) { prompt(`Haz lanzado un aviso con el teclado`); }; } // CAP 84 ↑↑↑ // *********************************************************************************************************** // *********************************************************************************************************** // CAP 85 ↓↓↓ /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Variables para el movimiento en X y Y: let x = 0, y = 0; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// export function moveBall(e, ball, stage) { //Primero enlazar las clases a variables del DOM const $ball = d.querySelector(ball), $stage = d.querySelector(stage); ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Variable para la colisión de la pelotita: --- variables para los limites: const limitBall = $ball.getBoundingClientRect(), limitStage = $stage.getBoundingClientRect(); ////////////// un console log para ver sus valores: // console.log( limitBall, limitStage); ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Un console log para saber para saber el keyCode de las teclas que se van a usar: //console.log(e.keyCode); // Y otro console para saber que tecla se está oprimiendo: //console.log(e.key); //Luego un switch case para hacer funcionar las teclas: //Este switch funcionara con los keyCode de las flechas (37 izquierda, 38 arriba, 39 derecha y 40 abajo) switch (e.keyCode) { // IZQUIERDA -- LEFT case 37: if (limitBall.left > limitStage.left) { x--; //Sentido negativo e.preventDefault(); //Cada preventDefault se lanza con su evento dentro del case para que no afecte externamente los shortcurts o las teclas especiales. } break; // ARRIBA -- TOP case 38: if (limitBall.top > limitStage.top) { y--; //En la web el eje y es invertido, por eso el negativo es hacia arriba. e.preventDefault(); } break; // DERECHA -- RIGHT case 39: if (limitBall.right < limitStage.right) { x++; //Sentido positivo e.preventDefault(); } break; // ABAJO -- BOTTOM case 40: if (limitBall.bottom < limitStage.bottom) { y++; //Sentido hacia abajo. e.preventDefault(); } break; default: break; } $ball.style.transform = `translate(${x * 10}px,${y * 10}px)`; //translate (posición X, posición Y) //Esto es lo que le da el movimiento y la dirección a la pelota. }
@RochaNahuel Жыл бұрын
Jon algo que veo que haces siempre y no entiendo que pasa , muchas veces creas una primer variable const y debajo creas otras identadas pero sin declararlas como const ? que pasa ahí?
@RochaNahuel Жыл бұрын
otra cosa que no entendí en el style.transform al valor de translate le decis x*10 siendo que x la iniciaste en 0 entonces el resultado no debería ser 0 por lo tanto la pelotita nunca se movería?
@luisvasquez1090 Жыл бұрын
@@RochaNahuel pasa que cuando estras al switch dependiendo del caso se suma o se resta una unidad bien sea en X o en Y . x-- x++ y-- y++
@luisvasquez1090 Жыл бұрын
Compañero cuando hace eso es por que esta declarando en bloque las variables, fijate que entre cada variable usa una coma .
@Juankybi4 жыл бұрын
después de 1 hora con un error. Resulta que limitsBall tenia que declararla antes. Como soy malo, muy malo, cometo muchos errores, y esta vez fui a leer documentación y parece que a ti si te deja hacerlo sin declarar como let la variable, por ejemplo. Y a mi me obliga a declararla. Puede que en estos 2 meses algo haya cambiado, o que? Porque yo miro tu código y tu no habías declarado la variable limitsBall. No importa, si eso me da tablas, y aprendo a aprender.
@jonmircha4 жыл бұрын
Si declaras una función de forma expresada, es decir como variable, su invocación forzosamente va despues, si con forma declarada, es decir con la palabra function, da igual donde la pongas
@angelicas80903 жыл бұрын
En realidad el profesor si declara las variables limitBall y limitStage, lo hace con el mismo const de $ball. Si miras bien en esas líneas de código no hay puntos y comas, si no comas, solo que no pone todo en una sola línea para que se vea mejor.
@davidavellaneda1333 жыл бұрын
Alguien sabe cómo se redondean esos valores del getBoundingClientRect, ya intenté con el Math.round() de muchísimas maneras pero nada que puedo, alguien me puede ayudar?
@jonmircha3 жыл бұрын
😮
@rodrigoromano76082 жыл бұрын
estoy en la misma.. ya probe con los métodos de la clase Math.
@oliviataveras28083 жыл бұрын
no se que pasa pero solo me funciona en los lados
@codelessbudd71083 жыл бұрын
fijate en los operadores que usas para comparar arriba y abajo, quizas estan al contrario de como deberian estar :)
@elweonweandolaweafome Жыл бұрын
🚨🚨🚨🚧28:29 patrulla de la programaciòn, muestre su còdigo🚧🚨🚨🚨
@jonmircha Жыл бұрын
😅🚨
@ronaldm.r4 жыл бұрын
Cuando termine todo los ejercicios del DOM lo subiré como una web, para que vea los resultados ya que codepen es enemigo de los módulos jajajaja