如何使用Javascript动态生成的Jquery修改对象?

时间:2018-05-02 15:08:01

标签: jquery algolia

我想将文本追加到由浏览器中的Algolia搜索创建的对象。这是由Algolia创建的块:

<div id="editing-view-port">
    <div></div>
</div>

我想在内部div中插入一个字符串。这就是我试过的:

$(document).find('#editing-view-port > div').append(e.results[0][0].transcript);

其中e.results [0] [0] .transcript是我的字符串。我可以将它附加到不是由Algolia搜索创建的对象。我怀疑这与委托或事件绑定有关,但我不确定如何实现这个目标?

更新清晰度:

这是我测试Algolia创建的对象与我创建的对象的方式......

我的JS:

$(document).find('#editing-view-port > div').append(e.results[0][0].transcript); // this is an Algolia object
$(document).find('#my-object > div').append(e.results[0][0].transcript); // this is an object created by me

字符串是&#34; test&#34;

结果HTML:

<div id="editing-view-port">
    <div></div>
</div>

<div id="my-object">
    <div>test</div>
</div>

值得注意的是,当我检查Chrome中动态生成的部分时,会包含以下部分:

#shadow-root (user-agent) == $0

1 个答案:

答案 0 :(得分:1)

您的问题似乎是在执行插入脚本时元素不存在。使用浏览器检查器检查HTML时,元素就在那里。因此,在两者之间创建了元素。你需要知道什么时候插入它,然后插入你的文本。如果你不能完全理解这一点,你应该尝试检测它。 在cacheKey()

中查看详细信息和可能的解决方案

编辑:请在评论中说明,如果您进行投票,应该采取什么措施。 THX。