最精简的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 相关文章推荐
Javascript 生成指定范围数值随机数
Jan 09 Javascript
javascript 面向对象编程基础 多态
Aug 21 Javascript
javascript实现随时变化着的背景颜色
Apr 02 Javascript
js实现每日自动换一张图片的方法
May 04 Javascript
Bootstrap分页插件之Bootstrap Paginator实例详解
Oct 15 Javascript
JS 实现 ajax 异步浏览器兼容问题
Jan 21 Javascript
javascript 判断当前浏览器版本并判断ie版本
Feb 17 Javascript
js 判断一个数字是不是2的n次方幂的实例
Nov 26 Javascript
vue文件树组件使用详解
Mar 29 Javascript
详解vue.js下引入百度地图jsApi的两种方法
Jul 27 Javascript
vue mounted 调用两次的完美解决办法
Oct 29 Javascript
js实现unicode码字符串与utf8字节数据互转详解
Mar 21 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将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
Javascript中的默认参数详解
2014/10/22 Javascript
JavaScript中的console.log()函数详细介绍
2014/12/29 Javascript
用JavaScript获取页面文档内容的实现代码
2016/06/10 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
AngularJS表单提交实例详解
2017/02/18 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
js中Object.defineProperty()方法的不详解
2018/07/09 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
vue 表单之通过v-model绑定单选按钮radio
2019/05/13 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程
2019/06/10 Javascript
JS实现给数组对象排序的方法分析
2019/06/24 Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
2019/08/17 Javascript
微信小程序 云开发模糊查询实现解析
2019/09/02 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
[07:08]2014DOTA2西雅图国际邀请赛 小组赛7月11日TOPPLAY
2014/07/11 DOTA
Python的装饰器用法学习笔记
2016/06/24 Python
Python中的os.path路径模块中的操作方法总结
2016/07/07 Python
python实现解数独程序代码
2017/04/12 Python
解决Mac安装scrapy失败的问题
2018/06/13 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
2020/03/07 Python
一份全面的PHP面试问题考卷
2012/07/15 面试题
什么样的创业计划书可行性高?
2014/02/01 职场文书
大学生社会实践自我鉴定
2014/03/24 职场文书
倡议书格式
2014/04/14 职场文书
交通事故和解协议书
2014/09/25 职场文书
2014年领班工作总结
2014/11/25 职场文书
2015年圣诞节寄语
2015/08/17 职场文书
2016大一新生军训感言
2015/12/08 职场文书
python Tkinter模块使用方法详解
2022/04/07 Python
MySQL外键约束(Foreign Key)案例详解
2022/06/28 MySQL