加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

jquery 可拖拽的窗体控件实现代码

发布时间:2020-12-14 23:44:10 所属栏目:资源 来源:网络整理
导读:所以要引入JQUERY框架。 把我的这个控件代码放到一个js文件里面直接引入就可以了 控件代码 复制代码 代码如下: $.fn.myDrag = function() { var self = $(this); self.css("position","absolute"); var p = self.position(); self.css({ left: p.left,top: p.
所以要引入JQUERY框架。
把我的这个控件代码放到一个js文件里面直接引入就可以了
控件代码
复制代码 代码如下:

$.fn.myDrag = function() {
var self = $(this);
self.css("position","absolute");
var p = self.position();
self.css({ left: p.left,top: p.top });
self.mousedown(
function(event) {
// debugger;
self.data("ifDary","true"); //保存状态,表示是否可以拖拽
// debugger;
var selfLeft = event.pageX - parseInt(self.css("left")); //计算出鼠标到这个元素的left
var selfTop = event.pageY - parseInt(self.css("top")); //计算出鼠标到这个元素的top
self.data("selfLeft",selfLeft); //保存坐标信息
self.data("selfTop",selfTop);
}
);
$(document).mouseup(
function() {
self.data("ifDary","false");
//防止窗体飞到外面去
var bWidth = $(window).width();
var bHeight = $(window).height();
var currentleft = parseInt(self.css("left"));
var currenttop = parseInt(self.css("top"));
if (currentleft <= 0)
currentleft = 0;
if (currentleft >= bWidth)
currentleft = bWidth - self.width();
if (currenttop <= 0)
currenttop = 0;
if (currenttop >= bHeight)
currenttop = bHeight - self.height();
self.css({ left: currentleft,top: currenttop });
}
);
$(document).mousemove(function(event) {
var state = self.data("ifDary");
if (state && state == "true") {
var selfLeft = event.pageX - parseInt(self.data("selfLeft")); //计算这个元素的left位置
var selfTop = event.pageY - parseInt(self.data("selfTop"));
self.css({ left: selfLeft,top: selfTop }); //设置这个元素的位置
}
});
return self;
}

javascript代码
复制代码 代码如下:

<script src="../script/jquery-1.3.2.js" type="text/javascript"></script> //这个是JQUERY框架,没有的自己搜索去到处都是,一脚踩一堆
<script src="myDrag.js" type="text/javascript"></script> //这个是我的那个控件代码
<script type="text/javascript">
$(function() {
$("#div1").myDrag();
});
</script>

HTML代码
复制代码 代码如下:

<div id="div1" style="background-color: Red; height: 100px; width: 100px;">
点击拖我吧
</div>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读