ng-sortable拖拽拉取效果demo地址:https://github.com/a5hik/ng-sortablejavascript
引入相關的js代碼:bower install ng-sortable -save
css
引入js,引入css樣式;html
<script type="text/javascript" src="dist/ng-sortable.min.js"></script> <link rel="stylesheet" type="text/css" href="dist/ng-sortable.min.css"> <!-- OPTIONAL: default style --> <link rel="stylesheet" type="text/css" href="dist/ng-sortable.style.min.css">
引用module;java
angular.module('xyzApp', ['as.sortable', '....']);
html代碼:git
<tbody data-ng-model="table.ListColumn" as-sortable=「dragControlListeners 」> <tr ng-repeat="selectedColumn in table.ListColumn track by $index" ng-if="!$ctrl.displayMore && $index<4 || $ctrl.displayMore" as-sortable-item> <td class="text-center"> <md-icon class="material-icons step icon-24-999" ng-bind="' open_with'" as-sortable-item-handle> </md-icon> </td> <td>{{selectedColumn | columnTranslateFilter}}</td> <td><span ng-if="selectedColumn.IsPrimaryKey">{{'true' | translate}}</span></td> <td><span ng-if="selectedColumn.IsRequired">{{'true' | translate}}</span></td> </tr>
js代碼
$scope.dragControlListeners = { // triggered when item order is changed with in the same column (what happens here) orderChanged: function (event) { // 排序操做 } }
html中主要是data-ng-model/as-sortable="dragControlListeners(該函數須要js中定義一下)"
三個屬性:as-sortable 表明了可拖拽的內容區域,包裹整個須要拖拽的區域;
as-sortable-item 表明了可拖拽的內容,也就是能夠拖拽的一行內容;
as-sortable-item-handle 表明了能夠進行拖拽的按鈕;
示例展現: