Для браузеров, не относящихся к webkit, существует несколько domMutation-Events, которые запускаются при изменении атрибута элемента (например, элемента body). См. DOMSubtreeModified и, что более важно, DOMAttrModified.
Интернет-обозреватель запускает событие onresize даже для элементов, отличных от Windows.
Опера чтит события domMutation.
Webkit, с другой стороны, отверг эти события как компромисс для скорости рендеринга и производительности javascript. У тебя нет другого способа, кроме как проверить через тайм-аут / интервал эффективный размер элемента.