Ir al contenido principal

Bola tirando bolo

En esta práctica de JavaScript he puesto en práctica el uso del control de tiempo en este lenguaje de programación.

Logotipo de JavaScript

Para poder comprender el código de esta práctica es muy importante conocer el uso de las funciones setInterval( ) y clearInterval( ). Como ayuda puedes echarle un vistazo a los siguientes enlaces:

👉Enlace 1      👉Enlace 2

Imágenes usadas

Bola Bolo vertical

Código HTML

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Práctica de JavaScript</title>
    <link href="estilos.css" rel="stylesheet" type="text/css" />
    <script src="funciones.js" type="text/javascript"></script>
  </head>
  <body>
    <div id="caja">
      <div id="bola">
        <img src="imagenes/bola.png" id="imagenBola" alt="Bola" />
      </div>
      <div id="bolo">
        <img src="imagenes/boloVertical.png" id="imagenBoloVertical" alt="Bolo vertical" />
      </div>
    </div>
    <p><input type="button" id="boton" value="Lanzar bola" /></p>
  </body>
  </html>

Código CSS

*{
    text-align: center;
}
#caja {
    position: relative;
    width: 800px;
    height: 200px;
    margin: 40px auto;
    border: 2px solid black;
}
#bola {
    position: absolute;
    top: 135px;
}
#bolo {
    position: absolute;
    top: 48px;
}
#boloHorizontal{
    position: absolute;
    top: 145px;
    left: 600px;
}

Código JavaScript

window.onload = inicializar;
function inicializar() {
  //POSICIÓN INICIAL DE LA BOLA Y EL BOLO
  document.getElementById("bola").style.left = "10px";
  document.getElementById("bolo").style.right = "150px";
  //----------------------------------------------------
  document.getElementById("boton").addEventListener("click", movimientoBola, false);
}
let desplazar = 0;
let movimiento;
function moverBola() {
  let bola = document.getElementById("bola");
  let bolo = document.getElementById("bolo");
  let boloVertical = document.getElementById("imagenBoloVertical");
  document.getElementById("boton").disabled = true;
  desplazar += 1;
  let posicion = desplazar + "px";
  if (posicion == "545px") {
    clearInterval(movimiento);
    boloVertical.src = "imagenes/boloHorizontal.png";
    bolo.id = "boloHorizontal";
  } else {
    bola.style.left = posicion;
  }
}
function movimientoBola() {
  movimiento = setInterval(moverBola, 5);
}

Demostración

Licencia de Creative Commons
Esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.

Entradas populares de este blog

Mostrar y ocultar un elemento con un solo botón

En esta práctica de JavaScript he puesto en práctica el uso de funciones dentro de otra función. Cuando se pulsa en un botón se oculta el elemento y se cambia el valor del botón. Cuando se pulsa nuevamente en el botón se muestra el elemento y se cambia el valor del botón. Para poder comprender el código de esta práctica es muy importante conocer el uso de las funciones en JavaScript y la forma de acceder a los elementos del DOM y a los atributos de dichos elementos . Como ayuda puedes echarle un vistazo a los siguientes enlaces: 👉 Enlace 1      👉 Enlace 2 Código HTML <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Práctica de JavaScript</title> ...

Obtener datos de botones de checkbox

En esta práctica de JavaScript he puesto en práctica el acceso a los datos de botones checkbox de un formulario en HTML. El usuario seleccionará sus hobbies favoritos de entre unas opciones y al pulsar sobre un botón se le mostrará los hobbies que ha seleccionado. Para poder comprender el código de esta práctica es muy importante conocer el uso de las propiedades checked y value en los botones de checkbox de un formulario en HTML. Como ayuda puedes echarle un vistazo a los siguientes enlaces: 👉 Enlace 1      👉 Enlace 2 Código HTML <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Práctica de JavaScript</title> <link href="estilos.css...

Tabla de multiplicar con JavaScript

En esta práctica de JavaScript he puesto en práctica el uso del bucle for y de la propiedad innerHTML en este lenguuaje de programación. El usuario ingresa un número y se le muestra la tabla de multiplicar de dicho número. Para poder comprender el código de esta práctica es muy importante conocer el uso del bucle for() , de la propiedad innerHTML y la forma de acceder a los elementos del DOM y a los atributos de dichos elementos . Como ayuda puedes echarle un vistazo a los siguientes enlaces: 👉 Enlace 1      👉 Enlace 2      👉 Enlace 3 Código HTML <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Práctica de JavaScript</title> <li...