使用dragula插件(Angular 1)链接
ng-单击不起作用 在 li 元素上移动(拖放到另一个 ul)
<ul dragula='"second-bag"'>
<li ng-click="fun()">Item One </li>
<li ng-click="fun()">Item Two</li>
<li ng-click="fun()">Item Three</li>
<li ng-click="fun()">Item Four</li>
</ul>
<ul dragula='"second-bag"'>
<li ng-click="fun()">Item One </li>
<li ng-click="fun()">Item Two</li>
<li ng-click="fun()">Item Three</li>
<li ng-click="fun()">Item Four</li>
</ul>
app.controller('ExampleCtrl', ['$scope', function ($scope) {
$scope.fun = function(){
alert('test');
}
}]);
这可能是 dragula 的预期行为,为了拖动您实际单击它的元素。
重要的部分是为什么要侦听dragula列表元素的单击事件?如果答案是操纵该特定元素或执行其他操作,dragula 会为您提供一系列机会。
<div dragula='"sixth-bag"'></div>
<div dragula='"sixth-bag"'></div>
app.controller('MuchExampleCtrl', ['$scope', 'dragulaService',
function ($scope, dragulaService) {
dragulaService.options($scope, 'sixth-bag', {
moves: function (el, container, handle) {
return handle.className === 'handle';
}
});
}
]);
在此示例中,您将更改"handled"元素的类名。与此类似,您可以将此方法用于其他可能的结果。
链接:
- http://bevacqua.github.io/angular-dragula/
- https://github.com/bevacqua/dragula#optionsmoves
同样作为替代方案,您可能希望查看服务ngDraggable以获取更多"Angular1样式"语法。
- ng可拖动:https://github.com/fatlinesofcode/ngDraggable