Estoy tratando de hacer el experimento de "movimiento de proyectil".
en HTML
<div> <label for="angle">Angle</label> <input id="angle" name="angle" type="number" max="90" min="0" value=50 ></input> <label for="velocity">Velocity</label> <input id="velocity" name="velocity" type="number" value=150></input> <button id="launch">Launch</button> <button id="reset">Reset</button> </div>
Y en JS:
let v = document.getElementById("velocity").value; let degreeAngle = document.getElementById("angle").value;
Puedo cambiar el valor de V y Angle en la entrada porque esto no afecta el valor. (siempre v es 150 y ángulo 50)
por qué ? y como puedo cambiar esos valores?
Parece que está buscando una forma de responder a los cambios en los valores establecidos por el usuario. Lo que está buscando es un controlador de eventos ( https://developer.mozilla.org/en-US/docs/Web/Events/Event_handlers ).
Los controladores de eventos le permiten adjuntar una función de devolución de llamada a un elemento y hacer que se ejecute cada vez que ocurra algún evento.
Puede adjuntar un controlador de eventos al evento de click
en el botón #launch
y ejecutar sus cálculos/simulación de la siguiente manera:
function onLaunchClicked() { let v = document.getElementById("velocity").value; let degreeAngle = document.getElementById("angle").value; // Run simulation } let launchButton = document.getElementById("launch"); launchButton.addEventListener("click", onLaunchClicked);