Перечисление элементов, сгенерированных Handlebars.js, ничего не возвращает при загрузке первой страницы - PullRequest
2 голосов
/ 04 апреля 2019

При попытке доступа к элементам, сгенерированным hanlebar.js при загрузке первой страницы, я ничего не получаю. При обновлении страницы все работает как положено.

То, что я делаю, выглядит примерно так:

First handlebars создает набор элементов раздела с именем «result». Затем я добавляю его в DOM с помощью:

d1.insertAdjacentHTML('afterend', result);

Затем с другим плагином JS это:

this.DOM.entries.length

Возвращает 0, и поэтому я не могу получить доступ к этим элементам с помощью:

this.DOM.entries[this.currentPos]

Странно, как при обновлении страницы все работает как положено, по-видимому, из-за кеширования браузера. Как я могу преодолеть это? Почему это происходит?

1 Ответ

0 голосов
/ 04 апреля 2019

Я нашел способ позаботиться об этом. Я инкапсулировал мой код перечисления DOM в setTimeout так:

setTimeout(function(){
 this.DOM.entries.length
...
}, 500);

Теперь это работает. Неуклюжий, так как добавляет на страницу задержку в 500 мс, но работает.

...