在链接函数中将事件绑定到指令的子元素

Ram*_*o M 4 angularjs angularjs-directive angularjs-ng-repeat

需要将事件绑定到指令的子节点,该子节点在templateUrl中使用ng-repeat准备.我试图在事件中绑定事件,link但孩子们还没准备好.

这是掠夺者.

在这里,我想绑定使用ng-repeat准备的标签上的click事件.li但是,当link执行时,li元素尚未准备好. 在此输入图像描述

有人可以帮忙吗

小智 5

我用angular $ timeout解决了同样的问题

link: function (scope, element) {
    $timeout(function () {
        element.on('click', '#Id', function () {
            console.log('inside event handler of the first child)
        })
    })
}
Run Code Online (Sandbox Code Playgroud)

通过在指令中注入$ timeout来尝试这个

  • 应该注意,这仅适用于包含jQuery的情况.否则Angular使用不支持selector参数的jqLit​​e. (2认同)