2014-05-04 208 views
0

我有這樣的:傳遞這個作爲參數傳遞給一個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(本)showDetails($這個)showDetails({{此}}),但他們似乎沒有工作。第一個在控制檯上打印一些東西,但可能是錯誤的,因爲它找不到child1。我做錯了什麼?

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

你爲什麼不使用'ngMouseover'? https://docs.angularjs.org/api/ng/directive/ngMouseover – gearsdigital

回答

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'); 
} 

這可能意味着你想操縱控制器中的元素,這是一個禁忌。您應該使用所需的功能制定自定義指令。

+0

我不建議在控制器中操作元素,我認爲它可以移動到指令。 – smallg

相關問題