2012-02-29 3 views
0

У меня есть XML, который работает с XSLT-файлом, который преобразует XML в таблицу на HTML-странице.Javascript DOM против XSLT Трансформация по производительности?

Мне нужно уметь обновлять эту таблицу на основе того, что пользователь выбирает из раскрывающегося списка. Два варианта:

  • отправлять новые параметры процессору XSLT, преобразовывать, очищать старый HTML-контент, размещать новый HTML-контент; делать это каждый раз при выпадающем значении изменения
  • использовать функцию javascript для прямого перемещения по HTML-коду и отображать/скрывать ячейки данных таблицы.

Что было бы лучше с точки зрения производительности?

EDIT: в основном пытаются применить фильтры

+0

Вы задаете неправильный вопрос. Если один подход занимает 1 мс, а другой занимает 2 мс, разница несущественна, потому что никто не заметит. Правильный вопрос: если оба подхода соответствуют требованиям к производительности, что лучше с точки зрения производительности разработчиков, ремонтопригодности и т. Д.? –

+0

Хотя я дал ответ ниже, я на самом деле прав с Майклом Кей: вот вопрос, который вы должны задать. Я все еще думаю, что JavaScript предоставит наиболее эффективное решение, но мне будет сложно попробовать решение XSLT только потому, что оно кажется таким аккуратным (в смысле BrE). –

ответ

2

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

+0

Спасибо, это помогает. – DillPixel

Смежные вопросы