Есть ли способ с помощью jQuery или JavaScript запускать функцию, когда пользователь заканчивает изменять размер окна браузера?
Другими словами:
- Могу ли я обнаружить событие подъема мыши, когда пользователь изменяет размер окна браузера? В противном случае:
- Могу ли я определить, когда операция изменения размера окна завершена?
В настоящее время я могу вызвать событие только тогда, когда пользователь начинает изменять размер окна с помощью jQuery
javascript
jquery
aneuryzm
источник
источник
Ответы:
Вы можете использовать,
.resize()
чтобы получать каждый раз, когда ширина / высота действительно изменяется, например:Здесь вы можете просмотреть рабочую демонстрацию , она принимает новые значения высоты / ширины и обновляет их на странице, чтобы вы могли их увидеть. Помните, что событие на самом деле не начинается и не заканчивается , оно просто «происходит», когда происходит изменение размера ... нечего сказать, что другого не произойдет.
Изменить: по комментариям кажется, что вам нужно что-то вроде «непрерывного» события, решение, которое вы нашли, делает это, с несколькими исключениями (вы не можете различить наведение мыши и паузу в кросс-браузере, то же самое для конца vs пауза ). Вы можете создать это событие, чтобы сделать его немного чище, например:
У вас может быть где-то это базовый файл, что бы вы ни делали ... тогда вы можете привязаться к этому новому
resizeEnd
событию, которое запускаете, например:Вы можете увидеть рабочую демонстрацию этого подхода здесь
источник
Этого можно достичь с помощью свойства onresize интерфейса GlobalEventHandlers в JavaScript, назначив функцию свойству onresize , например:
window.onresize = functionRef;
Следующий фрагмент кода демонстрирует это, консоль регистрирует innerWidth и innerHeight окна при каждом изменении его размера. (Событие изменения размера запускается после изменения размера окна)
источник
Другой способ сделать это, используя только JavaScript, был бы следующим:
Это срабатывает каждый раз, когда изменяется размер, как и другой ответ.
functionName
- имя функции, выполняемой при изменении размера окна (скобки в конце не нужны).источник
Если вы хотите проверять только по окончании прокрутки, в Vanilla JS вы можете предложить следующее решение:
Супер супер компактный
Все 3 возможные комбинации вместе (ES6)
источник