2017-04-06 221 views
3

我是angular-tree-widget.js的新手。一旦我們點擊任何樹狀子節點,我們就需要實現雙擊事件。我只發現了兩個事件。在angular-tree-widget中的子節點上添加雙擊事件

$scope.$on('selection-changed', function (e, node) { 
    //node - selected node in tree 
    $scope.selectedNode = node; 
}); 
$scope.$on('expanded-state-changed', function (e, node) { 
    // node - the node on which the expanded state changed 
    // to see the current state check the expanded property 
    //console.log(node.expanded); 
    $scope.exapndedNode = node;  
}); 

如何在節點上添加雙擊事件?請幫幫我。提前致謝。

+1

你嘗試這ng-dblclick =「」... –

+0

如何將此屬性添加到節點?我們正在angular.js中構建樹? –

回答

1

您可以添加ng-dblclick,如@Manikandan建議,以下列方式:

HTML

<body ng-controller="TreeController" ng-dblclick="dblclick($event)"> 
    <tree nodes='treeFamily'></tree> 
</body> 

的JavaScript

controller('TreeController', ['$scope', function ($scope) { 
    $scope.dblclick = function(evt) { 
     angular.element(evt.target).toggleClass('red') 
    } 
    ... 
}]) 

現場演示

https://plnkr.co/edit/nWfiDA82WDpgRGnLqJUs?p=preview

正如你所看到的,這個想法是訂閱事件樹的父元素,並使用evt.target,這是傳遞給事件處理程序使用樹項目之間的區分角度的$event

+0

感謝您的回答。但我的問題是「雙擊樹的子節點」。我們從數據庫中產生的。如果我雙擊任何節點有沒有辦法處理這個事件? –

+0

@SushilGupta我的代碼實際上處理雙擊樹的任何子節點,而不僅僅是樹本身。只要看看現場演示 – Vadim

+0

真棒!它工作得很好。 –