首页 > 解决方案 > Vanilla JS 如何使用 setTimeout 等待从元素中获取数据

问题描述

(function(){
    function returnResult(result){
       return result
    };
    setTimeout(function(){
        var result = window.document.querySelector('.element span').textContent.match(/\d+/)[0];
        returnResult(result)
    },500); 
})()

我正在尝试等待一段时间以从页面上的元素中提取数据以进行网络跟踪。元素需要几毫秒的时间来加载并且加载可靠,所以我不需要尝试做整个突变观察者等待元素出现的事情。

我只是想弄清楚如何从 setTimeout 中获取值。我在这里阅读了一个类似的问题,看来您必须对 setTimeout 中的数据做任何您想做的事情,并且您无法从 setTimeout 返回数据。

是否有另一种方法可以使 setTimeout 同步,以便阻止它后面的代码,这样下面的代码就可以工作了?

(function(){
     setTimeout(function(){},500); 
     return window.document.querySelector('.element span').textContent.match(/\d+/)[0]; 
 })()

标签: javascript

解决方案


推荐阅读