Safari ResizeObserver
by Julien Etienne
CSS
body{
font-size: 5rem;
}
JavaScript
/* let lastWidth;
const resizeObserver = new ResizeObserver(entries => {
const body = entries[0];
const width = body.contentRect.width;
if (width !== lastWidth) {
document.body.innerHTML = `CHANGE ${width}`;
}
lastWidth = width;
});
resizeObserver.observe(document.body);
*/
const bodyWidth = document.body.getBoundingClientRect().width;
document.body.innerHTML = `CHANGED: ${bodyWidth}`;
window.addEventListener('resize', () => {
const bodyWidth = document.body.getBoundingClientRect().width;
document.body.innerHTML = `CHANGED: ${bodyWidth}`;
});