Proponer código de scripting para el manejo de la interfaz del cliente mediante el desarrollo de una landing page funcional y atractiva utilizando una plantilla de Bootstrap para la adecuación a los requerimientos específicos.
Defina las funciones flecha
ready y loaded, con:
let ready = () => {
console.log('DOM está listo')
debugger
}
let loaded = () => {
debugger
console.log('Iframes e Images cargadas')
}
window
con el método addEventListener, del API
, para relacionar el evento
DOMContentLoaded con la función ready. let ready = () => { ... }
let loaded = () => { ... }
window.addEventListener("DOMContentLoaded", ready);
window.addEventListener("load", loaded)
Identifique el elemento <form> con id form en el documento index.html.
<form id="form" class="d-flex flex-wrap gap-2">
<input type="text" name="email"
placeholder="Your Email Addresss"
class="form-control form-control-lg">
<button class="btn btn-dark btn-lg text-uppercase w-100">Sign Up</button>
</form>
Escriba o genere el código:
Asigne a la variable myform la referencia al elemento HTML a partir del objeto document con el método getElementById. El formulario tiene id 'form'.
Agregue un punto de interrupción.
let loaded = () => {
//Coloque aquí el código
}
let loaded = () => {
let myform = document.getElementById('form');
debugger;
}
Escriba o genere el código:
Use la variable myform mediante con el método addEventListener para relacionar el evento submit con un callback (incluya el parámetro eventSubmit).
Dentro del callback, use el parámetro eventSubmit para evitar el comportamiento por defecto del formulario.
Agregue un punto de interrupción.
let loaded = () => {
let myform = document.getElementById('form');
//Coloque aquí el código
}
let loaded = ( eventLoaded ) => {
let myform = document.getElementById('form');
myform.addEventListener('submit', (eventSubmit) => {
eventSubmit.preventDefault();
debugger;
})
}
Escriba o genere el código:
Asigne a la variable emailElement la referencia al elemento HTML a partir del objeto document con el método querySelector. El elemento tiene la clase 'form-control-lg'.
Asigne a la variable emailText a partir del objeto emailElement con la propiedad value.
Use la variable emailText mediante la propiedad length para verificar la longitud. En caso que la longitud sea igual que 0, use la variable emailElement mediante con el método focus para llevar el enfoque al elemento.
Y, agregue un return.
let loaded = () => {
let myform = document.getElementById('form');
myform.addEventListener('submit', (eventSubmit) => {
eventSubmit.preventDefault();
//Coloque aquí el código
})
}
let loaded = ( eventLoaded ) => {
let myform = document.getElementById('form');
myform.addEventListener('submit', (eventSubmit) => {
eventSubmit.preventDefault();
const emailElement = document.querySelector('.form-control-lg');
const emailText = emailElement.value;
if (emailText.length === 0) {
emailElement.focus()
}
})
}
Escriba o genere el código:
Además de llevar el enfoque al elemento emailElement: Use el Animate API para que elemento emailElement se mueva de 0 a 50px y de -50px a 0, con una duración de 400 milisegundos.
emailElement.animate(
[
{ transform: "translateX(0)" },
{ transform: "translateX(50px)" },
{ transform: "translateX(-50px)" },
{ transform: "translateX(0)" }
],
{
duration: 400,
easing: "linear",
}
)
Avoid render blocking JavaScript using async and defer scripts. pic.twitter.com/JPDOlshMpk
— Kamran Ahmed (@kamrify) September 10, 2021
You're in a web developer internship interview. 💼
— Emiko.dev ☀️ (@emiko_dev) October 31, 2023
The interviewer asked:
"What's a DOM (Document Object Model) in web development?"
Here's how to answer:
Javascript, función flecha, API, console, debugger, window, evento, document, propiedad, función.