Ви можете використовувати .resize()щоразу, коли ширина / висота насправді змінюється, наприклад:
$(window).resize(function() {
//resize just happened, pixels changed
});
Ви можете переглянути робочу демонстрацію тут , вона бере нові значення висоти / ширини та оновлює їх на сторінці, яку ви бачите. Пам'ятайте, що подія насправді не починається і не закінчується , вона просто "відбувається", коли відбувається зміна розміру ... немає нічого сказати, що інша не відбудеться.
Редагувати: за коментарями здається, що ви хочете щось на кшталт події в кінці, рішення, яке ви знайшли, робить це за кількома винятками (ви не можете розрізнити мишу та паузу в крос-браузерному режимі, те саме для кінця проти паузи ). Однак ви можете створити цю подію, щоб зробити її трохи чистішою, наприклад:
$(window).resize(function() {
if(this.resizeTO) clearTimeout(this.resizeTO);
this.resizeTO = setTimeout(function() {
$(this).trigger('resizeEnd');
}, 500);
});
У вас може бути десь базовий файл де-небудь, що б ви хотіли зробити ... тоді ви можете прив’язати до тієї нової resizeEndподії, яку ви запускаєте, наприклад:
$(window).bind('resizeEnd', function() {
//do something, window hasn't changed size in 500ms
});
Ви можете побачити робочу демонстрацію цього підходу тут