La función onclick de JavaScript se activa prematuramente
Al crear un enlace con una estética similar a una etiqueta pero con la intención de ejecutar una función al hacer clic , los usuarios pueden encontrar un escenario en el que la función se llama erróneamente al cargar la página. Esto impide que el evento de clic deseado funcione correctamente.
El error común es el uso inadecuado de paréntesis al asignar el atributo onclick. En lugar de sentNode.onclick = secondFunction(), que ejecuta inmediatamente la función, la sintaxis correcta es sentNode.onclick = secondFunction. Esto asigna una referencia a la función, que solo se ejecutará en el evento de clic.
function startFunction() {
var sentNode = document.createElement('a');
sentNode.setAttribute('href', "#");
sentNode.setAttribute('onclick', secondFunction);
//sentNode.onclick = secondFunction();
sentNode.innerHTML = "Sent Items";
//...
}
Al omitir los paréntesis, el evento onclick se vincula correctamente a una referencia de función y no al resultado de su ejecución, lo que garantiza el comportamiento previsto.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3