0

我有一个在页面上生成一些元素的 javascript 代码。但是由于这些新生成的元素的数据来自外部源,因此这些元素可能需要一段时间才能加载。我想做的是在加载这些元素后做一些事情。所以我决定我应该检查元素是否每秒都出现,然后执行我的其他 coeds。

这就是我想要做的:

//start a timer like event handler which occurs every second
//in every second{
    if ($(".elementthatmustappear").is(":visible"))
    {
        //stop the timer
        //execute other codes
    }
    else
    {
        //don't stop the timer.continue checking
    }
}

有没有办法做到这一点?

4

1 回答 1

0

The thing I want to do is that I want to do some things AFTER these elements are loaded.

在这种情况下,听起来您应该将回调传递给加载内容的函数,该函数应在加载后执行。

如果您确实决定要遵循已制定的逻辑,则应该可以:

var timer = setInterval(function() {
    if ($(".elementthatmustappear").is(":visible")) {
        clearInterval(timer);
        doSomethingElse()
    }
}, 1000);
于 2013-08-18T13:15:15.557 回答