全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jquery实现拖动效果(代码分享)

话不多说,请看代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
</head>
<body>
 <style type="text/css">
 .page{text-align:left;}
 .dragDiv{border:1px solid #ddd; padding:10px; width:300px; margin:0 auto; border-radius:4px; box-shadow:0 1px 2px #fefefe; position: fixed;}
 </style>
 <div class="dragDiv" id="drag">
 <div class="drag-head">自己动手试试</div>
 <div class="drag-body">
 点击鼠标拖拖看
 </div>
 </div>
</body>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
 var _drag = {};
 _drag.top = 0; //拖动过的位置距离上边
 _drag.left = 0; //拖动过的位置距离左边
 _drag.maxLeft; //距离左边最大的距离
 _drag.maxTop; //距离上边最大的距离
 _drag.dragging = false; //是否拖动标志
 //拖动函数
 function bindDrag(el){ 
 var winWidth = $(window).width(), winHeight =$(window).height(),objWidth = $(el).outerWidth(), objHeight = $(el).outerHeight();
 _drag.maxLeft = winWidth - objWidth, _drag.maxTop = winHeight - objHeight;
 var els = el.style,x=0,y=0;
 var objTop = $(el).offset().top, objLeft = $(el).offset().left;
 $(el).mousedown(function(e){ 
 _drag.dragging = true;
 _drag.isDragged = true;
 x = e.clientX - el.offsetLeft; 
 y = e.clientY - el.offsetTop; 
 el.setCapture && el.setCapture(); 
 $(document).bind('mousemove',mouseMove).bind('mouseup',mouseUp);
 return false;
 }); 
 function mouseMove(e){ 
 e = e || window.event;
 if(_drag.dragging){
 _drag.top = e.clientY - y; 
 _drag.left = e.clientX - x;
 _drag.top = _drag.top > _drag.maxTop ? _drag.maxTop : _drag.top;
 _drag.left = _drag.left > _drag.maxLeft ? _drag.maxLeft : _drag.left;
 _drag.top = _drag.top < 0 ? 0 : _drag.top;
 _drag.left = _drag.left <0 ? 0 : _drag.left;
 els.top = _drag.top + 'px'; 
 els.left = _drag.left+ 'px';
 return false;
 }
 } 
 function mouseUp(e){ 
 _drag.dragging = false; 
 el.releaseCapture && el.releaseCapture(); 
 e.cancelBubble = true;
 $(document).unbind('mousemove',mouseMove).unbind('mouseup',mouseUp); 
 }
 $(window).resize(function(){
 var winWidth = $(window).width(),
 winHeight = $(window).height(),
 el = $(el),
 elWidth = el.outerWidth(),
 elHeight = el.outerHeight(),
 elLeft = parseFloat(el.css('left')),
 elTop = parseFloat(el.css('top'));
 _drag.maxLeft = winWidth - elWidth;
 _drag.maxTop = winHeight - elHeight;
 _drag.top = _drag.maxTop < elTop ? _drag.maxTop : elTop;
 _drag.left = _drag.maxLeft < elLeft ? _drag.maxLeft : elLeft;
 el.css({
 top:_drag.top,
 left:_drag.left
 })
 })
 } 
 bindDrag(document.getElementById('drag'));
</script>
</html>

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


# jquery实现拖动  # jquery  # 拖动效果  # 自己封装的一个原生JS拖动方法(推荐)  # 基于JS组件实现拖动滑块验证功能(代码分享)  # Android通过自定义ImageView控件实现图片的缩放和拖动的实现代码  # Android 仿淘宝、京东商品详情页向上拖动查看图文详情控件DEMO详解  # Android RecyclerView滑动删除和拖动排序  # 原生js实现可拖动的登录框效果  # 基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转  # js实现div在页面拖动效果  # javascript html5 canvas实现可拖动省份的中国地图  # 拖动时防止选中  # 拖动  # 多说  # 自己动手  # 点击鼠标  # margin  # auto  # shadow  # box  # radius  # padding  # ddd  # solid  # px  # width  # src  # script  # 拖拖看  # bdimg  # apps  # http 


相关文章: 营销式网站制作方案,销售哪个网站招聘效果最好?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  已有域名和空间如何搭建网站?  如何高效生成建站之星成品网站源码?  英语简历制作免费网站推荐,如何将简历翻译成英文?  如何选择域名并搭建高效网站?  如何通过网站建站时间优化SEO与用户体验?  代购小票制作网站有哪些,购物小票的简要说明?  建站之星如何修改网站生成路径?  文字头像制作网站推荐软件,醒图能自动配文字吗?  如何快速搭建个人网站并优化SEO?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  建站之星如何实现PC+手机+微信网站五合一建站?  如何通过万网虚拟主机快速搭建网站?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  香港服务器选型指南:免备案配置与高效建站方案解析  微信h5制作网站有哪些,免费微信H5页面制作工具?  如何快速搭建高效可靠的建站解决方案?  个人网站制作流程图片大全,个人网站如何注销?  如何选择高性价比服务器搭建个人网站?  如何在西部数码注册域名并快速搭建网站?  如何在Tomcat中配置并部署网站项目?  手机网站制作与建设方案,手机网站如何建设?  如何在Golang中指定模块版本_使用go.mod控制版本号  公司网站设计制作厂家,怎么创建自己的一个网站?  高端云建站费用究竟需要多少预算?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  建站之星安装步骤有哪些常见问题?  建站主机选虚拟主机还是云服务器更好?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  如何通过可视化优化提升建站效果?  如何登录建站主机?访问步骤全解析  教学网站制作软件,学习*后期制作的网站有哪些?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  如何配置支付宝与微信支付功能?  php json中文编码为null的解决办法  建站之星云端配置指南:模板选择与SEO优化一键生成  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  linux top下的 minerd 木马清除方法  存储型VPS适合搭建中小型网站吗?  济南企业网站制作公司,济南社保单位网上缴费步骤?  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何选择CMS系统实现快速建站与SEO优化?  如何快速选择适合个人网站的云服务器配置?  如何在Windows服务器上快速搭建网站?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  ,怎么用自己头像做动态表情包?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。