24 янв. 2013 г.

Поддержка HTML5 draggable и contenteditable браузерами

На словах всё прекрасно (поддерживается всеми современными версиями браузеров, включая IE9), а на деле при попытке использовать эти возможности HTML5 даже в простеньком приложении сразу натыкаешься на, мягко говоря, "особенности реализации".

22 янв. 2013 г.

Какие действия заставляют браузер вычислять layout (делать reflow)

В своей канонической статье Stoyan Stefanov подробно рассмотрел, что такое reflow, как он влияет на плавность работы интерфейса веб-приложения, какими инструментами производить анализ и как минимизировать количество reflow. Он привёл краткий список свойств и методов, вызов которых заставляет браузер вычислять layout (делать reflow):
  • offsetTop, offsetLeft, offsetWidth, offsetHeight
  • scrollTop, scrollLeft, scrollWidth, scrollHeight
  • clientTop, clientLeft, clientWidth, clientHeight
  • currentStyle (IE), getComputedStyle() (остальные браузеры)
Но это только очень краткий список. Как насчёт более обширного перечня?