脚本div实现拖放功能(两种)


Posted in Javascript onFebruary 13, 2017

网页上有很多拖曳的操作,比如拖动树状列表,可拖曳的图片等。

1.原生拖放实现

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>jQuery UI Autocomplete - Default functionality</title>
 <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="external nofollow" >
 <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
 <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
 <style>
 .drag{
 width: 200px;
 height: 200px;
 background-color: red;
 position: absolute;
 left:0;
 top:0;
 }
 </style>
 <script>
 $(function() {
 var _move = false;//判断目标对象书否处于移动状态
 var _x, _y;//鼠标离控件左上角的相对x.y坐标
 $('.drag').click(function(event) {
 }).mousedown(function(e) {//当按下鼠标左键时
 _move = true;//标记移动为true,开始移动
 _x = e.pageX - parseInt($('.drag').css('left'));//得到左上角的x的位置
 _y = e.pageY - parseInt($('.drag').css('top'));//得到左上角的y的位置
 $('.drag').fadeTo('20', 0.5);//单击后开始拖动
 
 });
 
 $(document).mousemove(function(e) {//监听鼠标移动
 if(_move) {
 var x = e.pageX - _x;//计算移动的距离
 var y = e.pageY - _y;
 $('.drag').css({top:y, left:x});
 }
 }).mouseup(function() {
 _move = false;
 $('.drag').fadeTo('fast', 1);
 });
 });
 </script>
</head>
<body>
 <div class="drag"></div>
</body>
</html>

2 jQuery UI draggable实现拖放

自行实现拖曳方法比较负责,jQuery UI提供了可拖曳的事件,允许用户非常简单的为一个div添加拖曳效果。

jQuery UI主要通过draggable事件来实现拖曳功能。

<script>
 $(document).ready(function(e) {
  $('.drag').draggable({cursor: 'move'});
  $('#enable').click(function(e) {
 $('.drag').draggable('enable');
  });
  $('#disable').click(function(event) {
 $('.drag').draggable('disable');
  });
  $('#deatroy').click(function(event) {
 $('.drag').draggable('destroy');
  });
 })
 </script>
</head>
<body>
 <button id="enable">enable</button>
 <button id="disable">disable</button>
 <button id="destroy">destroy</button>
 <div class="drag">
 <p>请拖动我!</p> 
 </div>
</body>

关于draggable的API可以参考draggalbe API

draggable 实例

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
8款非常棒的响应式jQuery 幻灯片插件推荐
Feb 02 Javascript
基于jquery实现等比缩放图片
Dec 03 Javascript
JS+CSS相对定位实现的下拉菜单
Oct 06 Javascript
JavaScript几种数组去掉重复值的方法推荐
Apr 12 Javascript
快速解决js动态改变dom元素属性后页面及时渲染的问题
Jul 06 Javascript
微信小程序 wx.request(接口调用方式)详解及实例
Nov 23 Javascript
vue组件初学_弹射小球(实例讲解)
Sep 06 Javascript
深入理解react-router 路由的实现原理
Sep 26 Javascript
Angular PWA使用的Demo示例
Jan 31 Javascript
layui数据表格重载实现往后台传参
Nov 15 Javascript
基于javascript处理二进制图片流过程详解
Jun 08 Javascript
JS PHP字符串截取函数实现原理解析
Aug 29 Javascript
bootstrap table 数据表格行内修改的实现代码
Feb 13 #Javascript
判断横屏竖屏(三种)
Feb 13 #Javascript
详解javascript立即执行函数表达式IIFE
Feb 13 #Javascript
jQuery实现大图轮播
Feb 13 #Javascript
使用ionic在首页新闻中应用到的跑马灯效果的实现方法
Feb 13 #Javascript
你真的了解BOM中的history对象吗
Feb 13 #Javascript
微信小程序-获得用户输入内容
Feb 13 #Javascript
You might like
PHP新手上路(二)
2006/10/09 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
php若干单维数组遍历方法的比较
2011/09/20 PHP
php设计模式之观察者模式的应用详解
2013/05/21 PHP
php 模拟POST提交的2种方法详解
2013/06/17 PHP
利用PHP如何实现Socket服务器
2015/09/23 PHP
完美解决Thinkphp3.2中插入相同数据的问题
2017/08/01 PHP
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
2013/02/18 Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
2014/01/17 Javascript
javascript版2048小游戏
2015/03/18 Javascript
基于javascript bootstrap实现生日日期联动选择
2016/04/07 Javascript
创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件
2016/06/02 Javascript
jQuery拖拽通过八个点改变div大小
2020/11/29 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
JavaScript fetch接口案例解析
2018/08/30 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
微信小程序中使用 async/await的方法实例分析
2020/05/06 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
一张图带我们入门Python基础教程
2017/02/05 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
Python tkinter模块弹出窗口及传值回到主窗口操作详解
2017/07/28 Python
Django models.py应用实现过程详解
2019/07/29 Python
Python脚本操作Excel实现批量替换功能
2019/11/20 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
2020/02/23 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
2020/04/27 Python
Fabletics官网:美国运动服饰品牌,由好莱坞女演员凯特·哈德森创立
2019/10/19 全球购物
Weblogc domain问题
2014/01/27 面试题
工程力学专业毕业生求职信
2013/10/06 职场文书
咖啡书吧创业计划书
2014/01/13 职场文书
八一建军节活动方案
2014/02/10 职场文书
一句话工作感言
2014/03/01 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
采购员岗位职责范本
2015/04/07 职场文书
小学大队长竞选稿
2015/11/20 职场文书
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫