GMail getElementById('canvas_frame')在Firefox中返回null

时间:2011-02-15 21:03:33

标签: javascript firefox-addon gmail

我编写了以下javascript函数,因为它似乎永远无法在加载的GMail页面(撰写页面)上找到canvas_frame元素。这是通过Firefox附加组件的XUL调用的。有关可能发生的事情的任何想法?

   init : function () {
        var frame, interval;
        frame = document.getElementById('canvas_frame');
        interval = setInterval(function() {
            if (frame) {
                if (frame.contentDocument) {
                    clearInterval(interval);
                    GLOBALS.doc = frame.contentDocument;
                    onContentReady();
                }
            }
        }, 500);
    }

1 个答案:

答案 0 :(得分:1)

您应该更喜欢在帧上等待加载事件,而不是轮询。但我的猜测是canvas_frame元素尚未创建,因此每次在轮询循环中都需要获取它。否则,frame变量始终为null。