4

在 jQuery 中,我可以使用live()添加事件侦听器,即使对于尚不存在的元素:

jQuery('a[href*="/item/"]', pageContent).live('click', preLoadAjaxPage);

闭包库是否有等价物?

goog.events.EventType没有任何“DOM 更改”事件,所以我不能goog.events.listen(goog.dom.getDocument(), goog.events.EventType.DOM_CHANGE, addEventListenersAgain)或类似的事情。

4

1 回答 1

3

我遵循@Felix Kling 的建议并在根目录下注册了事件处理程序:

goog.events.listen(document.body, goog.events.EventType.CLICK,
    /**
     * @param {goog.events.BrowserEvent} event
     */
    function(event) {
        var realEvent = event.event_;
        var el = /** @type {HTMLAnchorElement} */ (event).target;

        if (el.tagName.toLowerCase() == 'a' && (href matches pattern)) {
            // ...
        }
    });
于 2011-07-29T17:30:54.593 回答