나는 현재 angular-ui-tree 라이브러리를 사용하고 내가 다음과 같은 동작을 달성하기 위해 노력하고 끌기 시작 이벤트 대 충돌 NG 클릭 ng-click 기능, 사용자가 클릭하여 드래그를 시작하면 ng-click이 무시되고 일반 drag-n-drop이 시작됩니다.각도 JS (각-UI-트리)
나는 다음과 같은 한 HTML 구조 :
<div ui-tree="rootTree" ng-controller="Controller">
<div ui-tree-nodes="" ng-model="nodes">
<div ng-repeat="node in nodes" ui-tree-node="" ng-click="selectNode(node)" >
<div ui-tree-handle="">
...
</div>
</div>
</div>
</div>
현재의 행동은 드래그 앤 드롭 'mousedown'에 즉시 시작하고 드래그 시작하려고에서 '클릭'을 구별 할 수있는 방법이없는 것입니다
여기난 그냥 같은 문 제를 가지고 uiTreeNode.js
var bindDrag = function() {
element.bind('touchstart mousedown', function (e) {
if (!scope.$treeScope.multiSelect) {
dragDelaying = true;
dragStarted = false;
dragTimer = $timeout(function() {
dragStartEvent(e);
dragDelaying = false;
}, scope.$treeScope.dragDelay);
} else {
toggleSelect(e);
}
});
element.bind('touchend touchcancel mouseup', function() {
$timeout.cancel(dragTimer);
});
};
이 코드를 작성하려면 – Coder