使用 jquery
| 1
 | $(window).trigger('resize');
 | 
使用 dispatchEvent
| 12
 3
 4
 5
 6
 7
 
 | if (Event.prototype.initEvent) {const evt = window.document.createEvent('UIEvents');
 evt.initUIEvent('resize', true, false, window, 0);
 window.dispatchEvent(evt);
 else {
 window.dispatchEvent(new Event('resize'));
 }
 
 | 
说明
由于 window 的 resize 事件属于高频操作,需要进行 debounce 等方式来限制执行频率。
| 12
 3
 4
 
 | import _ from 'lodash';
 
 jQuery(window).on('resize', _.debounce(calculateLayout, 150));
 
 | 
另外,还有一个类似 debounce 的函数 throttle,两者的区别可以参考这篇文章。