将此作为参数传递给angularjs函数

时间:2014-05-04 07:03:01

标签: javascript angularjs

我有这个:

<div class="col-md-2 col-md-offset-1 team" ng-mouseover="showDetails()" >
           ....
           ....
           ....
</div>

我想将鼠标所在的部分传递给angularjs函数,然后我会找到每个孩子。

 $scope.showDetails = function(item){
        console.log(item);
        var element = $(item).find('#child1');
     }

我尝试了 showDetails(this) showDetails($ this) showDetails({{this}}),但他们似乎没有工作。第一个在控制台上打印一些东西,但可能是错误的,因为它找不到child1。我做错了什么?

a {$id: "004", this: a, $$listeners: Object, $$listenerCount: Object, $parent: a…}

1 个答案:

答案 0 :(得分:2)

您可以通过$event.target访问它。

<div class="col-md-2 col-md-offset-1 team" ng-mouseover="showDetails($event)" >
    ....
</div>

$scope.showDetails = function(evt){
    console.log(evt.target);
    var element = $(evt.target).find('#child1');
}

这可能意味着您想要操纵控制器中的元素,这是禁忌。您应该使用所需的功能制作自定义指令。