jquery 可拖拽窗体实现方法

前端之家收集整理的这篇文章主要介绍了jquery 可拖拽窗体实现方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
感兴趣jquery 可拖拽窗体实现方法的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。<br>
JQ代码
  1. /**
  2. * @param
  3. * @author 编程之家 jb51.cc jb51.cc
  4. **/
  5. $.fn.myDrag = function() {
  6. var self = $(this);
  7. self.css("position","absolute");
  8. var p = self.position();
  9. self.css({ left: p.left,top: p.top });
  10. self.mousedown(
  11. function(event) {
  12. // debugger;
  13. self.data("ifDary","true"); //保存状态,表示是否可以拖拽
  14. // debugger;
  15. var selfLeft = event.pageX - parseInt(self.css("left")); //计算出鼠标到这个元素的left
  16. var selfTop = event.pageY - parseInt(self.css("top")); //计算出鼠标到这个元素的top
  17. self.data("selfLeft",selfLeft); //保存坐标信息
  18. self.data("selfTop",selfTop);
  19. }
  20. );
  21. $(document).mouseup(
  22. function() {
  23. self.data("ifDary","false");
  24. //防止窗体飞到外面去
  25. var bWidth = $(window).width();
  26. var bHeight = $(window).height();
  27. var currentleft = parseInt(self.css("left"));
  28. var currenttop = parseInt(self.css("top"));
  29. if (currentleft <= 0)
  30. currentleft = 0;
  31. if (currentleft >= bWidth)
  32. currentleft = bWidth - self.width();
  33. if (currenttop <= 0)
  34. currenttop = 0;
  35. if (currenttop >= bHeight)
  36. currenttop = bHeight - self.height();
  37. self.css({ left: currentleft,top: currenttop });
  38. }
  39. );
  40. $(document).mousemove(function(event) {
  41. var state = self.data("ifDary");
  42. if (state && state == "true") {
  43. var selfLeft = event.pageX - parseInt(self.data("selfLeft")); //计算这个元素的left位置
  44. var selfTop = event.pageY - parseInt(self.data("selfTop"));
  45. self.css({ left: selfLeft,top: selfTop }); //设置这个元素的位置
  46. }
  47. });
  48. return self;
  49. }
JS代码:
  1. <script src="/jquery-1.3.2.js" type="text/javascript"></script> //这个是JQUERY框架,没有的自己搜索去到处都是,一脚踩一堆
  2. <script src="myDrag.js" type="text/javascript"></script> //这个是我的那个控件代码
  3. <script type="text/javascript">
  4. $(function() {
  5. $("#div1").myDrag();
  6. });
  7. </script>
html:
  1. <div id="div1" style="background-color: Red; height: 100px; width: 100px;">
  2. 点击拖我吧
  3. </div>

猜你在找的jQuery相关文章