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写个checkbox——类似邮箱全选功能
Mar 19 Javascript
css transform 3D幻灯片特效实现步骤解读
Mar 27 Javascript
js动态生成指定行数的表格
Jul 11 Javascript
Javascript中查找不以XX字符结尾的单词示例代码
Oct 15 Javascript
jQuery实现的瀑布流加载效果示例
Sep 13 Javascript
vue2.0实战之基础入门(1)
Mar 27 Javascript
bootstrap3 dialog 更强大、更灵活的模态框
Apr 20 Javascript
关于页面刷新vuex数据消失问题解决方案
Jul 03 Javascript
微信小程序实现弹出菜单功能
Jun 12 Javascript
ES6 class的应用实例分析
Jun 27 Javascript
javascript实现多边形碰撞检测
Oct 24 Javascript
解决Antd Table表头加Icon和气泡提示的坑
Nov 17 Javascript
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
攻克CakePHP系列二 表单数据显示
2008/10/22 PHP
php header Content-Type类型小结
2011/07/03 PHP
PHP中判断文件存在使用is_file还是file_exists?
2015/04/03 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
php 可变函数使用小结
2018/06/12 PHP
彻底搞懂JS无缝滚动代码
2007/01/03 Javascript
使用JS 清空File控件的路径值
2013/07/08 Javascript
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
JSONP之我见
2015/03/24 Javascript
js实现类似jquery里animate动画效果的方法
2015/04/10 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
2015/04/27 Javascript
js实现选中复选框文字变色的方法
2015/08/14 Javascript
详解Angularjs中的依赖注入
2016/03/11 Javascript
AngularJs IE Compatibility 兼容老版本IE
2016/09/01 Javascript
使用React实现轮播效果组件示例代码
2016/09/05 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
JavaScript中如何对多维数组(矩阵)去重的实现
2019/12/04 Javascript
Element-ui el-tree新增和删除节点后如何刷新tree的实例
2020/08/31 Javascript
vue使用swiper实现左右滑动切换图片
2020/10/16 Javascript
在Python中定义一个常量的方法
2018/11/10 Python
python 实现提取某个索引中某个时间段的数据方法
2019/02/01 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
2019/05/15 Python
详解PyCharm+QTDesigner+PyUIC使用教程
2019/06/13 Python
Python实现计算对象的内存大小示例
2019/07/10 Python
python实现tail实时查看服务器日志示例
2019/12/24 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
Django之腾讯云短信的实现
2020/06/12 Python
python中把元组转换为namedtuple方法
2020/12/09 Python
瑞典最大的儿童用品网上商店:pinkorblue.se
2021/03/09 全球购物
下列程序在32位linux或unix中的结果是什么
2014/03/25 面试题
初三开学计划书
2014/04/27 职场文书
运动会加油稿
2015/07/22 职场文书
2019自荐信该如何写呢?
2019/07/05 职场文书
vue3引入highlight.js进行代码高亮的方法实例
2022/04/08 Vue.js
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
2022/08/05 Vue.js