如何在创建元素后调用聚合物中的函数(如jquery中的ready函数)

时间:2016-11-23 16:22:05

标签: javascript polymer document-ready

我试图编写一个与DOM相关的函数,但问题是,聚合在加载DOM之前调用函数,并且正如预期的那样,它给了我一个未定义的错误!

我正在寻找像onComplete这样的事件或类似的东西,以便它可以在加载DOM后读取我的函数。

***最好的例子是Jquery中的ready函数

P.S:"准备好了:"聚合物中的事件不能正常工作,

2 个答案:

答案 0 :(得分:1)

你可以这样做:

var domReady = function (func) {
    if ('complete' === document.readyState) {
        func();

        return;
    }

    document.addEventListener('DOMContentLoaded', function () {
        func && func();
    });
};

domReady(function () {
    // Your code
});

答案 1 :(得分:1)

在Polymer 2.0中,您可以将其用于connectedCalback生命周期方法:

connectedCallback(){
   super.connectedCallback();  
   Polymer.RenderStatus.beforeNextRender(this, function() {
       // All references to the dom elements into the web component
       // [...]
   });
}