国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

基于AngularJS拖拽插件ngDraggable.js實現(xiàn)拖拽排序功能

2024-05-06 15:41:10
字體:
供稿:網(wǎng)友

ngDraggable.js是一款比較簡單實用的angularJS拖拽插件,借助于封裝好的一些自定義指令,能夠快速的進行一些拖拽應(yīng)用開發(fā)。首先先介紹一些基本的概念;

•ng-drop:是否允許放入拖拽元素

•ng-drop-success($data, $event):拖拽元素放入的回調(diào);$data:放入元素數(shù)據(jù);$event拖拽事件對象

•ng-drag:元素是否允許拖拽

•ng-drag-success($data, $event):$data:拖拽元素數(shù)據(jù),$event拖拽元素事件對象

•ng-drag-data:拖拽數(shù)據(jù)

  官方鏈接:https://github.com/fatlinesofcode/ngDraggable

  在拖拽進行元素排序時,只需動態(tài)更改下循環(huán)數(shù)組元素順序;具體事件綁定drop綁定在父元素,drag綁定在子元素即可,具體實現(xiàn)代碼如下:

效果圖如下:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <meta name="viewport" content="width=device-width, initial-scale=1.0">  <meta http-equiv="X-UA-Compatible" content="ie=edge">  <style>    .drag-container {      display: flex;      justify-content: flex-start;      align-items: center;    }    .drag-container .drag-box {      display: flex;      align-items: center;      justify-content: center;      width: 200px;      height: 200px;      margin: 20px;      color: #fff;      font-size: 20px;      font-weight: bold;    }    .drag-container .drag-box .drag-item {      display: flex;      align-items: center;      justify-content: center;      width: 150px;      height: 150px;    }  </style>  <title>ng-dragger</title></head><body ng-app="app" ng-controller="draggerController">  <div class="drag-container">    <div ng-repeat="item in dragArr" class="drag-box" ng-drop="true" ng-drop-success="onDropComplete($index, $data, $event)">      <div class="drag-item" ng-drag="true" ng-drag-data="{{item}}" ng-style="{background: item.color}">{{item.text}}</div>    </div>  </div>  <script src="https://cdn.bootcss.com/angular.js/1.3.1/angular.js"></script>  <script src="https://cdn.bootcss.com/ngDraggable/0.1.11/ngDraggable.js"></script>  <script>    var myApp = angular.module('app', ['ngDraggable']);    myApp.controller('draggerController', function($scope) {      $scope.dragArr = [{        text: '方塊1',        color: 'green',        key: 'arr1'      }, {        text: '方塊2',        color: 'blue',        key: 'arr1'      }, {        text: '方塊3',        color: '#888',        key: 'arr1'      }, {        text: '方塊4',        color: '#888',        key: 'arr2'      }, {        text: '方塊5',        color: '#888',        key: 'arr2'      }, {        text: '方塊6',        color: '#888',        key: 'arr2'      }];      $scope.onDropComplete = function(index, obj, $event) {        var otherObj = $scope.dragArr[index];        var otherIndex = $scope.dragArr.findIndex(vv => Object.is(vv.text, obj.text));        if (otherObj.key !== obj.key) return;        $scope.dragArr[index] = obj;        $scope.dragArr[otherIndex] = otherObj;      }    })  </script></body></html>            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 南木林县| 新源县| 和硕县| 玛纳斯县| 双江| 望城县| 子洲县| 射阳县| 珲春市| 广丰县| 新疆| 太仆寺旗| 新竹县| 碌曲县| 澳门| 长宁区| 无极县| 兰坪| 固阳县| 贡觉县| 黄骅市| 中卫市| 正阳县| 西和县| 景东| 轮台县| 阿克苏市| 准格尔旗| 桐庐县| 达拉特旗| 报价| 施秉县| 大同县| 杭锦后旗| 清水县| 鹿邑县| 禄劝| 康马县| 新源县| 旬阳县| 宝应县|