esperando el evento 'Fin' del evento 'RESEA' para la ejecución de acción óptima
en la programación impulsada por eventos, es común manejar los cambios de tamaño utilizando el evento 'RESEDE', típicamente asignado a una ventana u otro elemento residable. Sin embargo, cuando se producen operaciones de cambio de tamaño, el evento 'cambiar el tamaño' se activa varias veces durante el proceso, lo que lleva a una ejecución redundante de su manejador de eventos.
capturando el 'final' de un evento 'cambiar' ' 'setTimeOut ()' y 'ClearTimeOut ()'.
Solution:
crea una función, 'reedw ()', que servirá como su manejador de eventos para la acción de cambio de tamaño.
función RESEDW () { // Su acción para realizar al cambiar el tamaño }
function resizedw() { // Your action to be performed when resizing finishes }
var doit = null;
var doit = null;
window.onresize = function () {&&&&&] use 'Clear Timeout ()') la variable 'doit'.
window.onresize = function() {
asigne el resultado de 'setTimeout ()' a la variable 'doit'. Esto programará la ejecución de 'RESELEDW ()' después de un retraso de 100 milisegundos.
clearTimeout(doit);
Cuando finalice la operación de cambio de tamaño, el controlador de eventos 'onresize' se invocará sin activar 'reseizeW ()' inmediatamente. Después del retraso designado (100 milisegundos), 'reseedw ()' se ejecutará, marcando la finalización del proceso de cambio de tamaño.
doit = setTimeout(resizedw, 100); };código de ejemplo:
el siguiente código demuestra la implementación de este enfoque: function RESEDW () { // Su acción para realizar al cambiar el tamaño console.log ('RESISTENCIA DEL TINADO!'); } var doit = null; window.onresize = function () { ClearTimeOut (doit); doit = setTimeOut (RESEDEDW, 100); };
Esta solución maneja efectivamente el evento 'cambiar el tamaño' evitando que la acción asociada se ejecute durante el proceso de cambio de tamaño. En cambio, la acción se activa solo después de que la operación de cambio de tamaño haya concluido completamente.
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