Разве так плохо иметь кучу элементов в DOM? - PullRequest
2 голосов
/ 16 июня 2010

Я делаю неинтерактивный экран для их витрины .

Я заставил jCarousel делать то, что я хочу:

  • Добавление панелей в соответствии с AJAX
  • В конце текущего набора перейдите и AJAX добавьте несколько новых панелей и вставьте их

Это отлично работает, но, похоже, вызывает jQuery1015 * на предшествующих элементах вызывает уродливый удар.Я не уверен, что вызов hide() освободит какие-либо ресурсы, так как элемент все еще будет существовать (и элемент все равно будет вне экрана).

Я видел this и попытался carousel.reset() из-за обратного вызова.Он просто удаляет все элементы.

Он будет работать в Google Chrome в Windows XP и будет отображаться исключительно на ЖК-телевизорах.

Интересно, смогу ли я не найдет разумного решения для удаления лишних элементов DOM, приведет ли это к ползанию моего приложения или Chrome проведет какой-нибудь умный сборщик мусора?

Или как вас решить эту проблему?

Спасибо

Ответы [ 2 ]

1 голос
/ 17 июня 2010

Я разработал исправление, которое оказалось очень простым!

Просто передайте это в конфигурацию для jCarousel

itemFirstOutCallback: {
               onAfterAnimation: function(carousel, li, index, state) {
                 if (state === 'init') return;

                 carousel.remove(index); 

               }
            }

По сути, это просто удаляет элемент списка, как толькостановится невидимым (прокручивается на отрицательную overflow: hidden территорию, если хотите :))

1 голос
/ 16 июня 2010

Не могли бы вы использовать старые элементы вместо их удаления и добавления новых?

...