плагин wdcalendar работает очень медленно в IE8

#jquery #html #internet-explorer #jquery-ui

#jquery #HTML #internet-explorer #jquery-пользовательский интерфейс

Вопрос:

Я использую wdcalendar (http://www.web-delicious.com/jquery-plugins/#calendar ) с IE8.
В представлении месяца у меня много событий, и поэтому страница загружается очень медленно. Иногда мне приходится ждать 20 секунд!

После анализа проблемы мы заметили, что замедление происходит в html paint: IE8 работает медленно, когда jquery создает html.

У кого-нибудь есть идеи, как заставить IE8 выполнять код быстрее? Что я должен изменить в коде wdcalendar, чтобы помочь IE8 выполняться быстрее?

Ответ №1:

Вы пробовали загружать страницу без видимых элементов, а затем загружать их впоследствии или загружать их через jQuery после загрузки страницы?

Комментарии:

1. Что вы подразумеваете под «загрузкой страницы без видимых элементов, а затем их последующей загрузкой» и «загрузкой их через jQuery после загрузки страницы»? код, выполняемый внутри $(document). готово (функция(){ … });

2. Извините за задержку — если вы отображали календари месяцев в скрытом DIV (display: none;}, то он перерисовывается не очень часто. Когда он закончит обработку данных, вы сможете их отобразить, что затем вызовет однократную перерисовку для отображаемого кода. Это один из возможных способов решения проблемы с перерисовкой, но вы, вероятно, захотите проверить это на другой странице для сравнения. Я думаю, что ваш подход точен, но если вы используете скрытый элемент для IE8, вы можете обнаружить, что это помогает с проблемой рисования. Мне было бы интересно узнать, заметно ли это. Возможно, вы можете использовать jsFiddle. есть чистый образец?

3. Это огромный код для размещения в jsFiddle.. Предлагаете ли вы установить display: none для основной таблицы, которая содержит всю структуру, а затем, после всего сделанного, отобразить ее ??..

4. Сначала стоит проверить. Я бы попробовал это и сравнил. Если производительность не улучшилась — было бы здорово посмотреть пример страницы, которая не чувствительна к данным, чтобы попробовать.

5. Я сделал то, что вы предлагаете, но это не сработало. В любом случае, я принимаю ваш ответ, потому что я считаю, что решения нет. IE8 на сегодняшний день является одним из худших браузеров в мире.