拖拽及相关BUG的修复
来源:互联网 发布:linux file 文件编码 编辑:程序博客网 时间:2024/09/21 07:52
代码如下,主要是注意获取点击时鼠标与盒子的相应位置,最后用移动后的坐标减去相对的坐标。注意限制盒子拖拽范围,火狐的鬼影问题即可。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
*{margin: 0;padding: 0;}
#box{width: 100px;height: 100px;background-color: orange;position: absolute;}
</style>
<script type="text/javascript">
window.onload=function(){
var oBox=document.getElementById('box');
var divx=0;
var divy=0;
oBox.onmousedown=function(ev){
var iEvent=ev||event;//兼容的获取事件
divx=iEvent.clientX-oBox.offsetLeft;//点击时的相对坐标
divy=iEvent.clientY-oBox.offsetTop;
document.onmousemove=function(ev){
var iEvent=ev||event;
oBox.style.top=iEvent.clientY-divy+'px';//移动时坐标减去相对坐标等于自动后坐标
oBox.style.left=iEvent.clientX-divx+'px';
//限制区域
if(iEvent.clientY-divy<0){
oBox.style.top='0';
}
if(iEvent.clientX-divx<0){
oBox.style.left='0'
}
if(iEvent.clientY-divy>document.documentElement.clientHeight-oBox.offsetHeight){
oBox.style.top=document.documentElement.clientHeight-oBox.offsetHeight+'px'
}
if(iEvent.clientX-divx>document.documentElement.clientWidth-oBox.offsetWidth){
oBox.style.left=document.documentElement.clientWidth-oBox.offsetWidth+'px';
}
};
document.onmouseup=function(){
document.onmousedown=null;
document.onmousemove=null;
};
return false;//修复火狐的鬼影BUG
};
};
</script>
</head>
<body>
<div id="box">
</div>
</body>
</html> 0 0
- 拖拽及相关BUG的修复
- js拖拽事件及bug修复
- 简易拖拽以及bug的修复
- JavaScript之修复拖拽的bug
- Android一个权限相关的bug修复过程
- JS:简单的拖拽事件和bug修复
- bug的修复
- 修复bug的思考
- SiteMesh3.0.0 读取xml配置的bug及修复
- Spark Release 2.*.* 新特性及修复的bug
- js-鼠标拖拽窗口bug修复
- BUG及相关eclipse的问题。
- Android-FixBug热修复框架的使用及源码分析(不发版修复bug)
- Android-FixBug热修复框架的使用及源码分析(不发版修复bug)
- 一个nullPointer bug的修复
- Android Studio 2.0 Beta 5发布,修复几个与即时运行相关的严重BUG.
- Android Studio 2.0 Beta 5发布,修复几个与即时运行相关的严重BUG.
- 热修复的相关
- spring 拦截器
- checkBox多选时,重写hasCode()方法和equal()方法对实体类的增加和移除
- VC的「附加依赖项」、「库目录」和「包含目录」分别有什么用?
- 如何使用VS即visual studio建立C++项目或则C源代码
- Maven的仓库管理
- 拖拽及相关BUG的修复
- vs2010 创建 ActiveX 控件
- 随笔
- 机器视觉开源代码集合
- jxl导出excel(通讯录)
- map 按key或value排序
- EasyRTMP之MP4文件进行rtmp点播直播推送(三)
- Gson轻松解析json数据并保存到Sqlite数据库
- 离散余弦变换_原理及应用