最精简的JavaScript实现鼠标拖动效果的方法


Posted in Javascript onMay 11, 2015

相对于其它的鼠标拖动效果,这款拖动特效还是比较精简的,而且它还支持鼠标吸附,不按鼠标左键它也可以会跟随鼠标移动;定义时候也相对方便,只用指定被拖动的DIV ID就可以了,扩展性很好。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>鼠标拖动</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="JavaScript" type="text/javascript">
var drag_=false
var D=new Function('obj','return document.getElementById(obj);')
var oevent=new Function('e','if (!e) e = window.event;return e')
function Move_obj(obj){
 var x,y;
 D(obj).onmousedown=function(e){
 drag_=true;
 with(this){
  style.position="absolute";
  var temp1=offsetLeft;
  var temp2=offsetTop;
  x=oevent(e).clientX;y=oevent(e).clientY;
  document.onmousemove=function(e){
  if(!drag_)return false;
  with(this){
   style.left=temp1+oevent(e).clientX-x+"px";
   style.top=temp2+oevent(e).clientY-y+"px";
  }
  }
 }
 document.onmouseup=new Function("drag_=false");
 }
}
</script>
<body>
<div id="drag" style="background-color:#0066CC;width:280px;
height:160px;padding:20px;border:1px #003399 solid;
font-size:10.5pt;color:white" onmouseover='Move_obj("drag")'>
<p>这个层是可以拖动的,而且还可以吸附鼠标,试试看!</p>
<p>/</p>
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
使用JS+plupload直接批量上传图片到又拍云
Dec 01 Javascript
基于JavaScript实现熔岩灯效果导航菜单
Jan 04 Javascript
JavaScript利用Date实现简单的倒计时实例
Jan 12 Javascript
浅谈$_FILES数组为空的原因
Feb 16 Javascript
angular或者js怎么确定选中ul中的哪几个li
Aug 16 Javascript
微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析
Nov 27 Javascript
使用javascript函数编写简单银行取钱存钱流程
May 26 Javascript
AngularJS发送异步Get/Post请求方法
Aug 13 Javascript
小程序多图列表实现性能优化的方法步骤
May 28 Javascript
layui时间控件选择时间范围的实现方法
Sep 28 Javascript
简单实现节流函数和防抖函数过程解析
Oct 08 Javascript
JS实现炫酷雪花飘落效果
Aug 19 Javascript
JavaScript实现表格点击排序的方法
May 11 #Javascript
JavaScript点击按钮后弹出透明浮动层的方法
May 11 #Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
May 11 #Javascript
js光标定位文本框回车表单提交问题的解决方法
May 11 #Javascript
jQuery子窗体取得父窗体元素的方法
May 11 #Javascript
js控制div弹出层实现方法
May 11 #Javascript
JavaScript实现点击文字切换登录窗口的方法
May 11 #Javascript
You might like
php 删除无限级目录与文件代码共享
2008/11/22 PHP
PHP两种快速排序算法实例
2015/02/15 PHP
PHP树-不需要递归的实现方法
2016/06/21 PHP
PHP7安装Redis扩展教程【Linux与Windows平台】
2016/09/30 PHP
Thinkphp 中 distinct 的用法解析
2016/12/14 PHP
详解php框架Yaf路由重写
2017/06/20 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
利用javascript/jquery对上传文件格式过滤的方法
2009/07/25 Javascript
jQuery JSON实现无刷新三级联动实例探讨
2013/05/28 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
javascript实现表单验证
2016/01/29 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
2016/11/16 Javascript
layer实现弹窗提交信息
2016/12/12 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
2017/05/15 jQuery
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
jQuery动态生成的元素绑定事件操作实例分析
2019/05/04 jQuery
微信小程序获取用户信息及手机号(后端TP5.0)
2019/09/12 Javascript
JavaScript实现像雪花一样的Hexaflake分形
2020/07/07 Javascript
JavaScript的一些小技巧分享
2021/01/06 Javascript
matplotlib subplots 调整子图间矩的实例
2018/05/25 Python
python 字符串只保留汉字的方法
2018/11/16 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
Python API 自动化实战详解(纯代码)
2019/06/11 Python
python 字典有序并写入json文件过程解析
2019/09/30 Python
python中upper是做什么用的
2020/07/20 Python
matplotlib相关系统目录获取方式小结
2021/02/03 Python
荷兰之家英文站:Holland at Home
2016/10/26 全球购物
宣传部部长竞选演讲稿
2014/04/26 职场文书
学校创先争优活动总结
2014/08/28 职场文书
2014小学语文教师个人工作总结
2014/12/03 职场文书
收银员岗位职责
2015/02/03 职场文书
护士实习自荐信
2015/03/06 职场文书
2015年大学班级工作总结
2015/04/28 职场文书
食品安全责任书范本
2015/05/09 职场文书