如何增加document.getElementById的延迟

时间:2018-06-21 19:55:54

标签: javascript delay getelementbyid

我有这个:

我正在尝试加载此js代码,value.id对应于加载页面后检测到的元素。但是实际上这段代码是在元素加载之前运行的,并且出现此错误:

无法读取null的属性“ nodeType”

我想在document.getElementById(value.id)上添加类似延迟的内容

我尝试了这个,但是什么也没有:

    const area = setTimeout(document.getElementById(value.id), 4000);
    Count.on(area, counter => {
    ...

和:

function setDelay() {
  document.getElementById(value.id);
}
setTimeout(setDelay, 4000);
const area = setDelay
Count.on(area, counter => {
...

都给出相同的错误,任何想法吗?

2 个答案:

答案 0 :(得分:0)

您可以将代码放入一个函数中,并将其称为setDelay函数

function setDelay() {
    const area = document.getElementById(value.id);
    Count.on(area, counter => {
    ...
}
setTimeout(setDelay, 4000);

setTimeout不会向呼叫者返回任何内容。

答案 1 :(得分:0)

感谢所有人,我通过以下方法解决了该问题:

$(document).ready(function(){
// your code
});