一尘不染

通过作用域$ id获取DOM元素

angularjs

我知道我可以按元素获取范围:

scope = angular.element($0).scope();
scope.$id; // "003"

我该如何反向:使用scope来查找DOM元素$id,例如003

我想这样做是为了调试。我的作用域树显示了一些内容,我想确定它的来源。


阅读 306

收藏
2020-07-04

共1个答案

一尘不染

尽管不是很性感,但每个dom节点都有一个ng-scope类,因此您可以通过技术进行如下操作:

function getScope(id) {
var elem;
$('.ng-scope').each(function(){
    var s = angular.element(this).scope(),
        sid = s.$id;

    if(sid == id) {
        elem = this;
        return false; // stop looking at the rest
    }
});
return elem;
}
2020-07-04