Максимально допустимое количество делений на веб-странице - PullRequest
9 голосов
/ 15 августа 2010

Привет, мне было интересно, есть ли ограничение на количество div-ов, разрешенных на веб-странице?

Например, Internet Explorer начнет задыхаться, когда он должен отобразить веб-страницу с тысячей делений?

Ответы [ 2 ]

27 голосов
/ 23 марта 2012

Я знаю, что это старый пост, но недавно я провел тест, который напрямую связан с этой темой, и я хотел поделиться своими результатами.

Я создал простой php-скрипт, который выплевывает число 5px на 5px inline-block div для проверки стабильности браузера и способности прокрутки страницы.

При 1000 делениях на странице IE9, Firefox и Chrome не имеют никаких проблем и даже не выглядят икру при прокрутке.

При 10 000 делений IE9 и Chrome могут прокручиваться с едва заметной задержкой, все еще в пределах «приемлемого» диапазона в моей книге, однако Firefox начинает заметно отставать, до точки, где вы чувствуете, что полоса прокрутки прыгает в положение на полсекунды позже, чем следует.

Интересно, что разница в производительности между 10000 делителей и 100000 не так радикальна, как вы могли бы себе представить. IE9 и Chrome работают с едва заметной задержкой при прокрутке (Chrome - чуть более плавная из двух), а Firefox имеет очень заметную задержку, которая, вероятно, считается раздражающей, но все же функционирует достаточно хорошо (т.е. т аварии).

Теперь на 500 000 делений на странице наконец стало интересно. IE9 Сбой и попытка перезапустить себя (на той же странице, конечно) и снова сбой, после чего я правильно выключил его, перезапустил, и попытался еще раз, чтобы убедиться, что тот же результат произойдет снова. Это сделал.

Chrome оставался стабильным, но из-за большой задержки стало невозможно прокручивать страницу.

Большим сюрпризом стал Firefox, браузер, который был коренастым на 100 000 делений, примерно такой же, как на 500,00 делениях ... прокрутка не гладкая, но она намного лучше Chrome.

Удивительно, но результаты были примерно одинаковыми для 1 000 000 делений на странице! Firefox обрабатывал их без сбоев и оставался прокручиваемым, хотя и «коренастым». IE9 разбился. И Chrome смог загрузить страницу, но стал настолько медленным, что его практически невозможно было использовать.

Я знаю, что это не совсем научное исследование, но я подумал, что это может быть интересно кому-то еще, кроме меня.

Тесты проводились на рабочей станции Dell с процессорами Dual-Xeon и 4 гигабайтами оперативной памяти под управлением Windows 7.

1 голос
/ 15 августа 2010

Есть две вещи, которые следует учитывать. Память - это та, где DOM-узлы занимают огромное количество места. Другой - процессорное время, необходимое для повторного рендеринга всех этих узлов, когда что-то меняется. Порог плавного рендеринга зависит от используемого двигателя. По моему опыту, IE сильно отстает, начинает задыхаться после нескольких сотен. Firefox может занять несколько тысяч, и примерно столько же (и чуть лучше) для браузеров WebKit, таких как Chrome.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...