Я использую телефонную связь с рулем, но даже если я предварительно скомпилировал шаблоны, все равно медленно.
Возможно, причиной этого является размещение сценария внутри шаблона.
<table class="table table-striped table-hover">
<thead>
<tr>
<th>IMG</th>
</tr>
</thead>
<tbody>
{{#each array}}
<tr>
<td>
<a href= "{{this}}" class="swipebox" title="My Caption">
<img src= "{{this}}" alt="image" width="50" height="50">
</a>
</td>
</tr>
{{/each}}
</tbody>
</table>
<script>
var table = $('table').dataTable({
lengthMenu: [[-1, 50, 25, 10], ["Todo", 50, 25, 10]],
sPaginationType: "full_numbers",
language: {
"url": "json/Spanish.json"
}
});
</scr{{undefined}}ipt>
Ваш HTML ужасен. Причину замедления невозможно устранить без вашей модели представления.
Это контекст
<script type="text/javascript">
var array = [];
for (i = 0; i < 3; i++) {
var src = "img/arrow_ + i + .png";
array.push(src);
}
var context = {"array":array}
var theCompiledHtml = Handlebars.templates['events.tmpl'](context);
$('.render').html(theCompiledHtml);
</script>
var theCompiledHtml = Handlebars.templates['events.tmpl'](context);
Я не уверен, для чего предназначена ваша функция в тегах скрипта; похоже, для итерации по массиву изображений, но код, который я вставил для вызова вашего предварительно скомпилированного шаблона, туда не относится.
В идеале у вас должен быть один файл приложения с вызовами шаблонов, сообщающий странице, куда выводить визуализированный HTML.
Сейчас я думаю, что то, что я вижу, приведет к тому, что ваш предварительно скомпилированный шаблон будет полностью оценен браузером перед рендерингом. Это делает прекомпиляцию бесполезной.
Закрытие из-за бездействия.