枚举Handlebars.js生成的元素在第一页加载时不返回任何内容

时间:2019-04-04 06:04:48

标签: javascript dom handlebars.js

在首页加载时尝试访问hanlebar.js生成的元素时,我什么也没得到。 刷新页面时,一切正常。

我正在做的事情是这样的:

第一个车把创建一组名为“结果”的节元素。 然后,使用以下命令将其添加到我的DOM中:

d1.insertAdjacentHTML('afterend', result);

然后,使用另一个js插件:

this.DOM.entries.length

返回0,因此我无法使用以下命令访问这些元素:

this.DOM.entries[this.currentPos]

奇怪的是,当我刷新页面时,一切都按预期工作,这显然是由于浏览器缓存所致。 我该如何克服?为什么会这样?

1 个答案:

答案 0 :(得分:0)

我找到了一种解决此问题的方法。我将DOM枚举代码封装在setTimeout中,如下所示:

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

现在可以使用了。笨拙,因为它会给页面增加500毫秒的延迟,但它可以工作。