I understand I can get the scope by element:
scope = angular.element($0).scope();
scope.$id; // \"003\"
How do I get reverse: Find the DOM
Trying out the answer, I found that directives don't seem to have the class ng-scope, so here's a modified version that'll fallback to everything.
var getByScopeId = function(id) {
var filterfn = function(i,el) {
var sc = angular.element(el).scope();
return sc && sc.$id == id;
};
// low hanging fruit -- actual scope containers
var result = $('.ng-scope').filter(filterfn);
if(result && result.length) return result;
// try again on everything...ugh
return $(':not(.ng-scope)').filter(filterfn);
}
Usage:
var results = getByScopeId('003')