首页 > 解决方案 > jQuery-如何知道动态内容/标签是否已完全加载

问题描述

我正在开发一些扩展,我正在监听插入的动态内容并使用这两种方法。

searchTag = 'tagtosearch'
$(document).on ('DOMNodeInserted', searchTag,{}, function(e){

});

$(document).arrive(searchTag, function(){

});

两者都工作正常。第二个版本是一个独立于这里的库

感兴趣的是这个标签的一些属性,当回调被调用时,这些属性this可能仍然是未定义的。

为了解决这个问题,我使用setTimeoutwhere 我检查属性是否未定义(如果已定义)我停在那里或再次调用它。

searchTag = 'tagtosearch'

function foo (node, timeout) 
{
    var valid = function () {} // check if attribute is undefined or not.

    if (valid) {
        // do my stuff here.
    } else {
        setTimeout(foo, timeout, node, timeout);    
    }
}

$(document).on ('DOMNodeInserted', searchTag,{}, function(event){
    setTimeout(foo, 100, this, 100);
});

有没有其他替代方法可以做到这一点,而不是foo在每个超时毫秒后调用。如果不是这种方式更好吗?

标签: javascriptjquerydomedit

解决方案


推荐阅读