首页 / JQUERY / jquery插件之拖拽
jquery插件之拖拽
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了jquery插件之拖拽,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2043字,纯文字阅读大概需要3分钟。
内容图文
该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧。
此插件旨在实现目前较为流行的拖拽效果,您可以根据自己的实际需求来设置被拖拽元素是否可以被拖拽至可视区域以外。整体代码如下:
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > < html xmlns ="http://www.w3.org/1999/xhtml" > < head > < meta http-equiv ="Content-Type" content ="text/html; charset=utf-8" /> < title >无标题文档</title><style> *{margin:0;padding:0;} .box{position:absolute;left:100px;top:100px;border:1px solid #eee;width:150px;height:150px;padding:10px;cursor:move;}</style><script type="text/javascript" src="../test/jquery-1.7.1.js"></script><script type="text/javascript" src="jquery.drag.js"></script></head><body><div class="box">拖拽我吧!</div><script> $(function(){ $(".box").drag({ out:false//false 默认匹配元素不能被拖拽至可视区域以外 }); }) </script></body></html>
拖拽插件jquery.drag.js代码:
/* *drag 0.1 *Copyright (c) 2015 小坏 http://tnnyang.cnblogs.com *Dependenc jquery-1.7.1.js */ ;( function (a){ a.fn.drag = function(options){ var defaults = { //默认参数 out:false//默认匹配元素不会被拖至可视区域以外 } var opts = a.extend(defaults, options); this.each(function(){ var obj = a(this); obj.mousedown(function(e){ var e = e || event; //区分IE和其他浏览器事件对象var x = e.pageX - obj.offset().left; //获取鼠标距离匹配元素左侧的距离 var y = e.pageY - obj.offset().top; //获取鼠标距离匹配元素顶端的距离 $(document).mousemove(function(e){ var e = e || event; var _x = e.pageX - x; //动态获取元素左侧距离var _y = e.pageY - y; if(!opts.out){ var maxW = $(window).width() - obj.outerWidth(); //可视区域左侧距离匹配元素左侧的宽度var maxH = $(window).height() - obj.outerHeight(); //可视区域顶部距离匹配元素顶部的高度 _x = _x < 0 ? 0 : _x; //保证匹配元素不会被拖至可视区域以外 _x = _x > maxW ? maxW : _x; _y = _y <0 ? 0 : _y; _y = _y > maxH ? maxH : _y; }else{ _x = _x; _y = _y; } obj.css({left:_x,top:_y}); }).mouseup(function(){ $(this).unbind("mousemove"); //当鼠标抬起 删除移动事件 匹配元素停止移动 }); }); }) } })(jQuery);
原文:http://www.cnblogs.com/tnnyang/p/4795442.html
内容总结
以上是互联网集市为您收集整理的jquery插件之拖拽全部内容,希望文章能够帮你解决jquery插件之拖拽所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。