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


Posted in Javascript onMarch 21, 2010

所以要引入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>
Javascript 相关文章推荐
jquery 插件 人性化的消息显示
Jan 21 Javascript
JavaScript 面向对象编程(2) 定义类
May 18 Javascript
单击复制文字兼容各浏览器的完美解决方案
Jul 04 Javascript
鼠标焦点离开文本框时验证的js代码
Jul 19 Javascript
js控制当再次点击按钮时的间隔时间
Jun 03 Javascript
Angular 页面跳转时传参问题
Aug 01 Javascript
jQuery控制元素隐藏和显示
Mar 03 Javascript
Vue+mui实现图片的本地缓存示例代码
May 24 Javascript
小程序点击图片实现自动播放视频
May 29 Javascript
Vue 页面权限控制和登陆验证功能的实例代码
Jun 20 Javascript
浅谈vue异步数据影响页面渲染
Oct 29 Javascript
swiperjs实现导航与tab页的联动
Dec 13 Javascript
jquery实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
Mar 21 #Javascript
javascript qq右下角滑出窗口 sheyMsg
Mar 21 #Javascript
js 居中漂浮广告
Mar 21 #Javascript
jquery checkbox,radio是否选中的判断代码
Mar 20 #Javascript
javascript中的new使用
Mar 20 #Javascript
javascript 操作select下拉列表框的一点小经验
Mar 20 #Javascript
js 格式化时间日期函数小结
Mar 20 #Javascript
You might like
PHP 超链接 抓取实现代码
2009/06/29 PHP
php切割页面div内容的实现代码分享
2012/07/31 PHP
如何做到打开一个页面,过几分钟自动转到另一页面
2007/04/20 Javascript
如何使用jquery修改css中带有!important的样式属性
2016/04/28 Javascript
Vue.js实现模拟微信朋友圈开发demo
2017/04/20 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
2017/07/18 Javascript
vuex的简单使用教程
2018/02/02 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
JavaScript原型对象原理与应用分析
2018/12/27 Javascript
在vue中使用setInterval的方法示例
2019/04/16 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
vue实现tab栏点击高亮效果
2020/08/19 Javascript
[01:16:50]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第一场 3月7日
2021/03/11 DOTA
浅析Python中的赋值和深浅拷贝
2017/08/15 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
python3正则模块re的使用方法详解
2020/02/11 Python
Python如何基于Tesseract实现识别文字功能
2020/06/05 Python
Visual Studio code 配置Python开发环境
2020/09/11 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
HTML5是否真的可以取代Flash
2010/02/10 HTML / CSS
Too Faced官网:美国知名彩妆品牌
2017/03/07 全球购物
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
英国森林假期:Forest Holidays
2021/01/01 全球购物
模具设计与制造专业推荐信
2014/02/16 职场文书
医学生职业生涯规划书范文
2014/03/13 职场文书
请假条格式范文
2014/04/10 职场文书
机械操作工岗位职责
2014/08/08 职场文书
大学生党员自我剖析材料
2014/10/06 职场文书
个人年终总结结尾
2015/03/06 职场文书
首都博物馆观后感
2015/06/05 职场文书
《老人与海鸥》教学反思
2016/02/16 职场文书
《有余数的除法》教学反思
2016/02/22 职场文书
创业计划书之溜冰场
2019/10/25 职场文书
spring cloud 配置中心native配置方式
2021/09/25 Java/Android