jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)


Posted in Javascript onJune 28, 2013

相对于上一篇,优化了拖拽的效果。
js代码:fun.js

_MoveObj = null;//全部变量,用来表示当前div 
z_index = 0;//z方向 
jQuery.fn.myDrag=function(){ 
_IsMove = 0; //是否移动 1.移动 
_MouseLeft = 0; //div left坐标 
_MouseTop = 0; //div top坐标 
$(document).bind("mousemove",function(e){ 
if(_IsMove==1){ 
$(_MoveObj).offset({top:e.pageY-_MouseLeft,left:e.pageX-_MouseTop}); 
} 
}).bind("mouseup",function(){ 
_IsMove=0; 
$(_MoveObj).removeClass("downMouse"); 
}); 
return $(this).bind("mousedown",function(e){ 
_IsMove=1; 
_MoveObj = this; 
var offset =$(this).offset(); 
_MouseLeft = e.pageX - offset.left; 
_MouseTop = e.pageY - offset.top; 
z_index++; 
_MoveObj.style.zIndex=z_index; 
$(_MoveObj).addClass("downMouse"); 
}); 
}

html代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>demo.htm</title> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
<script src="scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
<script src="myFun.js" type="text/javascript"></script> 
<style type="text/css"> 
.myDiv{ 
background:#EAEAEA; 
width: 100px; 
height: 100px; 
border: 1px solid; 
cursor: pointer; 
text-align: center; 
line-height: 100px; 
} 
.downMouse{ 
cursor:move; 
filter:alpha(Opacity=80); 
-moz-opacity:0.5; 
opacity: 0.5; 
background-color:#ffffff; 
} 
</style> 
<script type="text/javascript"> 
$(function(){ 
$(".myDiv").myDrag(); 
//$("#myDiv2").myDrag(); 
}) 
</script> 
</head> 
<body> 
<div id="myDiv1" class="myDiv">拖拽1</div> 
<div id="myDiv2" class="myDiv">拖拽2</div> 
<div id="myDiv3" class="myDiv">拖拽3</div> 
<div id="myDiv4" class="myDiv">拖拽4</div> 
<div id="myDiv5" class="myDiv">拖拽5</div> 
<div id="myDiv6" class="myDiv">拖拽6</div> 
<div id="show"></div> 
</body> 
</html>

jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
Javascript 相关文章推荐
基于jquery的时间段实现代码
Aug 02 Javascript
javascript异步编程的4种方法
Feb 19 Javascript
原创jQuery弹出层插件分享
Apr 02 Javascript
jQuery实现不断闪烁文字的方法
May 15 Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
Nov 17 Javascript
浅析JS原型继承与类的继承
Apr 07 Javascript
jQuery表单事件实例代码分享
Aug 18 Javascript
解决拦截器对ajax请求的拦截实例详解
Dec 21 Javascript
bmob js-sdk 在vue中的使用教程
Jan 21 Javascript
详解如何在微信小程序中愉快地使用sass
Jul 30 Javascript
使用pm2自动化部署node项目的方法步骤
Jan 28 Javascript
Vue Elenent实现表格相同数据列合并
Nov 30 Vue.js
Ext JS添加子组件的误区探讨
Jun 28 #Javascript
Javascript实现重力弹跳拖拽运动效果示例
Jun 28 #Javascript
jQuery随便控制任意div隐藏的方法
Jun 28 #Javascript
js实时获取系统当前时间实例代码
Jun 28 #Javascript
js复制到剪切板的实例方法
Jun 28 #Javascript
Javascript无阻塞加载具体方式
Jun 28 #Javascript
Extjs4 类的定义和扩展实例
Jun 28 #Javascript
You might like
随时给自己贴的图片加文字的php代码
2007/03/08 PHP
PHP+MySQL 制作简单的留言本
2009/11/02 PHP
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
2013/06/01 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
javascript验证上传文件的类型限制必须为某些格式
2013/11/14 Javascript
JS去除字符串两端空格的简单实例
2013/12/27 Javascript
jquery插件corner实现圆角边框的方法
2015/03/09 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
js图片翻书效果代码分享
2015/08/20 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
JavaScript学习笔记之数组随机排序
2016/03/23 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
2016/11/25 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
Vue.directive自定义指令的使用详解
2017/03/10 Javascript
JavaScript之面向对象_动力节点Java学院整理
2017/06/29 Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
nodejs实现连接mongodb数据库的方法示例
2018/03/15 NodeJs
傻瓜式解读koa中间件处理模块koa-compose的使用
2018/10/30 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
vue history 模式打包部署在域名的二级目录的配置指南
2019/07/02 Javascript
[01:35:13]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第一场 1月18日
2021/03/11 DOTA
python中ASCII码和字符的转换方法
2018/07/09 Python
深入解析python中的实例方法、类方法和静态方法
2019/03/11 Python
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
String这个类型的class为何定义成final?
2012/11/13 面试题
南京迈特望C/C++面试题
2012/07/09 面试题
医学检验专业大学生求职信
2013/11/18 职场文书
5.1手机促销活动
2014/01/17 职场文书
导购员的岗位职责
2014/02/08 职场文书
幼儿园小班家长寄语
2014/04/02 职场文书
土木工程求职信
2014/05/29 职场文书
竞选大队干部演讲稿
2014/09/11 职场文书
2014年国庆节庆祝建国65周年比赛演讲稿
2014/09/21 职场文书
四风对照检查材料范文
2014/09/27 职场文书
财务审计整改报告
2014/11/06 职场文书