最精简的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 相关文章推荐
Firefox window.close()的使用注意事项
Apr 11 Javascript
jQuery 技巧大全(新手入门篇)
May 12 Javascript
javascript 动态修改样式和层叠样式表代码
Apr 27 Javascript
Jquery实现显示和隐藏的4种简单方式
Aug 28 Javascript
JS 获取鼠标左右键的键值方法
Oct 11 Javascript
js实现拖拽效果
Feb 12 Javascript
浅谈Jquery核心函数
Jun 18 Javascript
Vue中img的src属性绑定与static文件夹实例
May 18 Javascript
vue router2.0二级路由的简单使用
Jul 05 Javascript
Vue渲染函数详解
Sep 15 Javascript
Angular5中提取公共组件之radio list的实例代码
Jul 10 Javascript
js表达式与运算符简单操作示例
Feb 15 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 is_dir() 判断给定文件名是否是一个目录
2010/05/10 PHP
深入解析PHP 5.3.x 的strtotime() 时区设定 警告信息修复
2013/08/05 PHP
PHP+Mysql实现多关键字与多字段生成SQL语句的函数
2014/11/05 PHP
PHP向浏览器输出内容的4个函数总结
2014/11/17 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
2016/04/07 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
2017/06/06 PHP
php的单例模式及应用场景详解
2021/02/27 PHP
js 数组实现一个类似ruby的迭代器
2009/10/27 Javascript
自己使用js/jquery写的一个定制对话框控件
2014/05/02 Javascript
JS实现黑客帝国文字下落效果
2015/09/01 Javascript
JS实现的网页背景闪电闪烁效果代码
2015/10/17 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
2016/05/10 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
javascript稀疏数组(sparse array)和密集数组用法分析
2016/12/28 Javascript
通过sails和阿里大于实现短信验证
2017/01/04 Javascript
js Date()日期函数浏览器兼容问题解决方法
2017/09/12 Javascript
Angular动画实现的2种方式以及添加购物车动画实例代码
2018/08/09 Javascript
Vue瀑布流插件的使用示例
2018/09/19 Javascript
微信小程序基于Taro的分享图片功能实践详解
2019/07/12 Javascript
微信小程序 函数防抖 解决重复点击消耗性能问题实现代码
2019/09/12 Javascript
Bootstrap实现模态框效果
2019/09/30 Javascript
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
在Python中关于中文编码问题的处理建议
2015/04/08 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
S’well Bottle保温杯官网:绝缘不锈钢水瓶
2018/05/09 全球购物
体育专业个人的求职信范文
2013/09/21 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
运动会主持词大全
2015/07/02 职场文书
python垃圾回收机制原理分析
2022/04/13 Python
python画条形图的具体代码
2022/04/20 Python
Spring Boot 实现 WebSocket
2022/04/30 Java/Android