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 相关文章推荐
jsp网页搜索结果中实现选中一行使其高亮
Feb 17 Javascript
JavaScript DOM进阶方法
Apr 13 Javascript
基于JavaScript实现移除(删除)数组中指定元素
Jan 04 Javascript
jQuery 3.0 的变化及使用方法
Feb 01 Javascript
jQuery中选择器的基础使用教程
May 23 Javascript
JavaScript无操作后屏保功能的实现方法
Jul 04 Javascript
Vue的watch和computed方法的使用及区别介绍
Sep 06 Javascript
Vue触发隐藏input file的方法实例详解
Aug 14 Javascript
微信小程序HTTP接口请求封装代码实例
Sep 05 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
Oct 30 Javascript
vue 导航内容设置选中状态样式的例子
Nov 01 Javascript
Vue微信公众号网页分享的示例代码
May 28 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
php递归实现无限分类生成下拉列表的函数
2010/08/08 PHP
php模拟socket一次连接,多次发送数据的实现代码
2011/07/26 PHP
如何利用http协议发布博客园博文评论
2015/08/03 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
微信公众号实现扫码获取微信用户信息(网页授权)
2019/04/09 PHP
利用js实现选项卡的特别效果的实例
2013/03/03 Javascript
JS图片无缝滚动(简单利于使用)
2013/06/17 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
vue 1.0 结合animate.css定义动画效果
2018/07/11 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
查找Vue中下标的操作(some和findindex)
2020/08/12 Javascript
JavaScript WeakMap使用详解
2021/02/05 Javascript
[03:07]【DOTA2亚洲邀请赛】我们,梦开始的地方
2017/03/07 DOTA
[01:00] DOTA2英雄背景故事第五期之重力引力法则谜团
2020/07/16 DOTA
Python读写Json涉及到中文的处理方法
2016/09/12 Python
Python unittest模块用法实例分析
2018/05/25 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
详解Python可视化神器Yellowbrick使用
2019/11/11 Python
python小白切忌乱用表达式
2020/05/29 Python
python 如何引入协程和原理分析
2020/11/30 Python
环境科学专业大学生自荐信格式
2013/09/21 职场文书
中专毕业生求职简历的自我评价
2013/10/21 职场文书
优秀员工自荐书范文
2013/12/08 职场文书
致垒球运动员加油稿
2014/02/16 职场文书
品牌宣传方案
2014/03/21 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
房屋维修申请报告
2015/05/18 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
公司财务制度:成本管理控制制度模板
2019/11/19 职场文书
Python Django搭建文件下载服务器的实现
2021/05/10 Python
如何使用PyCharm及常用配置详解
2021/06/03 Python
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android
vue实现拖拽交换位置
2022/04/07 Vue.js