您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關使用AngularJS怎么實現一個拖拽功能,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
具體如下:
<!DOCTYPE html> <html ng-app="myApp"> <head> <meta charset="UTF-8"> <title>www.jb51.net AngularJS拖拽</title> <style> *{ padding:0; margin:0; } .wei{ width:100px; height:100px; background: red; position:absolute; cursor: pointer; /*left:0;top:0;*/ } </style> </head> <body ng-controller="show"> <div class="wei" wei-yi data="true"></div> <div class="wei" wei-yi data="false"></div> <script src="jquery.js" type="text/javascript" charset="utf-8"></script> <script src="angular.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var app = angular.module('myApp',[]); //自定義屬性 app.directive("weiYi",function(){ return{ restrict :'A',//A屬性,E標簽,C類名,D注釋 link :function(scope,element,attr){ attr.data=angular.equals(attr.data,"true"); //console.log(attr.data); console.log(element); element.on("mousedown",function(e){ var that = $(this); console.log(attr.data); if(attr.data){ $div=$("<div>"); console.log($div); $div.css({"width":"100px","height":"100px","border": "2px dotted green","position":"absolute","left":that.offset().left,"top":that.offset().top}); $div.appendTo($("body")); } var x=e.clientX-$(this).offset().left; var y=e.clientY-$(this).offset().top; //console.log(x+":"+y); $(document).on("mousemove",function(e){ if(attr.data){ $div.css({"left":e.clientX-x,"top":e.clientY-y}); }else{ that.css({"left":e.clientX-x,"top":e.clientY-y}); } }); $(document).on("mouseup",function(e){ //console.log($div); $(document).off(); if(attr.data){ that.css({"left":$div.offset().left,"top":$div.offset().top}); $div.remove(); } }) }) } } }); app.controller('show',['$scope',function(scope$){ }]); </script> </body> </html>
以上就是使用AngularJS怎么實現一個拖拽功能,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。