IE sp62

 

Firefox 2.0.0.12

 

Opera 9.22

 

Safari 3.04b

 

OffsetHeight

 

 

 

 

 

IsHidden

 

 

 

 

 

IsHidden2

 

 

 

 

 

OffsetHeight vs. isHidden

 

Раза

 

Раз

 

Раза

 

Раза

 

Таблица 6.5 .Резульаты выполнения функции isHidden . Времена приведены в миллисекундах

Как показывают тесты, даже при большой вложенности падение скорости невелико. Таким образом, мы получили универсальное решение, которое быстрее доступа к offsetHeight в 30–100 раз.

 

Заключение

 

Все вышеприведенные мысли предназначены не столько для решения проблемы выяснения видимости элемента в общем случае, сколько для объяснения одного из наиболее часто встречающихся узких мест взаимодействия с DOM и детального разбора методов оптимизации. В ходе тестов был намеренно воспроизведен наихудший случай. В реальных ситуациях такой прирост скорости получится только при использовании в анимации. Однако понимание причин и механизма reflow позволяет писать более оптимальный код.

 

В качестве послесловия: стили или классы?

 

В заключении давайте затронем еще несколько оптимизационных моментов, связанных с отображением HTML‑страницы на экране браузера. Пусть в нашем документе есть элементы, у которых нужно поменять цвет, фон или что‑нибудь еще, относящееся к стилям. Например, подсветить строки таблицы при наведении мыши или пометить их, если выбрана соответствующая галочка в форме.

Существует два способа это сделать: при помощи стилей или установив цвет (или фон) напрямую из JavaScript. Для начала немного кода – с помощью класса:

var items = el.getElementsByTagName('li');

 

for (var i = 0; i < 1000; i++) {

items[i].className = 'selected'

}

И с помошью стилей:

var items = el.getElementsByTagName('li');

 

for (var i = 0; i < 1000; i++) {

items[i].style.backgroundColor = '#007f00';

items[i].style.color = '#ff0000';

}

Результаты простые и понятные:

Метод

 

IE 6

 

IE 7

 








Дата добавления: 2015-05-19; просмотров: 530;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.