如何无限期地等待DOM加载?

卡洛斯·塞达·迪亚兹(Carlos Cerda Diaz)

功能:

window.addEventListener("DOMContentLoaded" , function(){});

要么

window.addEventListener("load" , function(){});

它允许我执行任何操作,就像它在DOM中加载两种方法之间的某些特殊性一样快。

这是 "as soon as"

但是,如何无限期等待加载DOM?

并加载DOM,执行功能?让我解释一下:假设我有一个函数,任何人。

cube cube = n => Math.pow (n, 3);
if (document.readyState === 'complete') cube (3);

假设立方体函数在我的代码中是FUNDAMENTAL。

但是,如果尚未加载DOM,则该函数将不会执行。

因此,如何无限期等待直到DOM加载,并推迟另一个函数,该函数会响应此主函数(多维数据集)

因此,如果我的脚本到了这一点并且DOM没有加载,那么所有这些功能将没有任何价值。

我的重点而不是

“如果发生这种情况,请执行此操作”

是:

“请等待,然后执行”

Raina77ow

第一步:创建一个在DOMContentLoaded处理程序和cube函数中均可见的变量它的值应该是该处理程序解决的承诺。例如:

const DOMLoaded = new Promise((resolve, reject) => {
  document.addEventListener("DOMContentLoaded", resolve);
  // consider creating reject-on-timeout 
  // with something like setTimeout(reject, 60000 * 10);
});

第二步:通过调用cube()处理此诺言解析:

DOMLoaded.then(() => cube(3));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使特定的工作无限期地等待奴隶?

尽管指定了超时,poll() 会无限期地等待

如何在Java中无限期等待?

java串行read()无限期等待-如何中断它?

获取线程无限期等待

Golang频道使程序无限期等待

Winsock发送功能无限期等待

递归定义无限期地挂起

OrientDB无限期地锁定记录

Jenkins声明式管道无限期地等待执行者

当从 Web API 项目调用时,Polly 在 .NET Framework 4.6.1 上无限期地等待线程

Ignite节点无法加入集群,无限期地等待协调器响应

Gulp Browsersync + Babel Express服务器无限期地等待本地主机

如何无限期清洁睡眠?

如何使数组无限期循环?

如何配置赛普拉斯以更长(或无限期)等待BaseUrl?

如何在Spring Boot中无限期地创建请求

如何无限期地暂停Java中的线程并稍后恢复它?

如何保持JMS消息侦听器无限期地侦听

然后如何无限期地持有悲观锁,以便跟踪集群中的主节点?

如何使用Jquery无限期地刷新HTML中的标签

如何无限期地在Chrome中记录浏览历史记录?

如何无限期地循环功能(而不是使用常规的for循环)

如何使用Bash在各个白天无限期地运行命令?

如何在执行程序时无限期地启动c#FileSystemWatcher函数?

如何使扫描仪输入无限期地存储最后2个值?

C - 线程在等待时无限期卡住

无限期等待可能永远不会到达的消息

为什么此SemaphoreSlim无限期等待?